`
highfly-s
  • 浏览: 102124 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

动态显示文本框输入的字数

阅读更多

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title</title>
    <script type="text/javascript">
    window.onload = function(){
        var oH2 = document.getElementsByTagName('h2')[0];
        var oTextarea = document.getElementsByTagName('textarea')[0];
        var oButton = document.getElementsByTagName('button')[0];
        var aRadio = document.getElementsByName('radio');
        function Fallback(){
            oTextarea.value != '' ? oButton.className = 'button' : oButton.className = 'button1';
            if(aRadio[0].checked == true){
                if(WordLength(oTextarea) > 140){
                    sum = 0;
                    for(i=0;i<oTextarea.value.length;i++){
                        sum += LimitLength(oTextarea.value.substr(i,1));
                        if(sum > 140)oTextarea.value = oTextarea.value.substr(0,i);
                    }
                }
                Limit(oTextarea,140,oH2);
            }else{
                Limit(oTextarea,140,oH2);
            }
        }
        oTextarea.onkeyup = Fallback;
        oButton.onclick = function(){this.className=='button1' ? Error(oTextarea) : (font_count < 0 ? Error(oTextarea) : alert('发布成功!'));};
        oTextarea.oncontextmenu = function(){return false;};
    }

    function LimitLength(obj){
        var iLen = obj;
        var iLimitLength = 0;
        var iLimitLength = iLen.match(/[^ -~]/g) == null ? iLen.length : iLen.length + iLen.match(/[^ -~]/g).length;
        return iLimitLength;
    }
    function WordLength(obj){
        var oVal = obj.value;
        var oValLength = 0;
        oVal.replace(/\n*\s*/,'')=='' ? oValLength = 0 : oValLength = oVal.match(/[^ -~]/g) == null ? oVal.length : oVal.length + oVal.match(/[^ -~]/g).length;
        return oValLength
    }
    function Limit(obj,iNow,tit){
        var oValLength = WordLength(obj);
        font_count = Math.floor((iNow-oValLength)/2); 
        if(font_count>=0){
            tit.innerHTML = "请文明发言,还可以输入<span>"+font_count+"</span>字";
            return true;
        }else{
            tit.innerHTML = "已超出<span style='color:red'>"+Math.abs(font_count)+"</span>字";
            return false;
        }
        return font_count
    }
    function Error(obj){
        var oTimer = null;
        var i=0;
        oTimer = setInterval(function(){
            i++;
            i==5 ? clearInterval(oTimer) : (i%2==0 ? obj.style.backgroundColor = '' : obj.style.backgroundColor = '#ffd4d4');
        },100);
    }
    </script>
    </head>

    <body>
    <div class="box">
        <h2>请文明发言,还可以输入<span>70</span>字</h2>
        <label><textarea></textarea></label>
        <div class="btn">
            <div class="sel">
                <input type="radio" name="radio" checked="checked"><label>文字自动回退</label><input type="radio" name="radio"><label>数字提醒超出</label>
            </div>
            <button class="button1"></button>
        </div>
    </div>
    </body>
    </html>

分享到:
评论

相关推荐

    jQuery textarea文本框输入文字字数限制提示代码

    要限制textarea的输入字数,我们首先要获取textarea元素。在HTML中,我们可以创建一个textarea并为其设置一个ID,如`id="myTextarea"`。然后,我们可以在jQuery的选择器中使用这个ID来选择这个元素: ```html ...

    HTML5文本框输入字数限制提示特效

    在本示例中,“HTML5文本框输入字数限制提示特效”是一个利用HTML5特性实现的实用功能,它帮助用户在输入文字时实时监控并提示字数限制。 首先,HTML5的`&lt;input&gt;`标签用于创建输入字段,可以是各种类型的,如文本、...

    jQuery计算文本框可输入字数代码.zip

    在这个"jQuery计算文本框可输入字数代码"中,开发者创建了一个功能,用于动态计算并显示文本框中可输入的字数。 首先,我们来看一下基础的HTML结构,通常会包含一个文本输入框和一个用于显示剩余字数的元素: ```...

    HTML5文本框输入字数限制提示特效.zip

    在这个"HTML5文本框输入字数限制提示特效.zip"压缩包中,包含了一个实用的特效代码,用于限制用户在文本框(`&lt;input type="text"&gt;`)中输入的字数,并且提供实时的字数提示。这个功能对于网页表单设计尤其有用,可以...

    jQuery textarea文本框输入文字字数限制提示代码.zip

    //显示限制输入字符method function textAreaChange(obj){ var $this = $(obj); var count_total = $this.next().children('span').text(); var count_input = $this.next().children('em'); var area_...

    动态显示输入文字字数

    文件、文件夹加密后,双击它,会弹出密码输入对话框,只有输入正确的密码才能打开该文件。使用完毕退出以后,它自动恢复到加密状态,无需再加密。把文件夹和文件直接加密成Exe可执行文件。你可以将重要的数据以这种...

    控制textarea文本长度,并限制输入字数(带统计显示)

    本文将深入探讨如何实现对`textarea`文本长度的控制,并实时显示输入字数的统计。 首先,我们可以使用JavaScript来实现这一功能。JavaScript是一种广泛使用的客户端脚本语言,可以在用户与网页交互时执行,提供动态...

    字数输入限制按百分比例显示代码

    "字数输入限制按百分比例显示代码"是一种实现这一功能的技术,它允许开发者动态地根据输入框的总字符数限制来显示当前已输入的百分比,为用户提供实时反馈。 首先,我们要理解这个功能的基本工作原理。通常,我们会...

    输入框 文本域 字数限制

    自己做的文本框字数统计/限制插件 输入框 或者 文本域 动态显示还剩余可输入字数

    文本框的字数限制功能jquery插件

    `data-maxsize`指定了文本框可接受的最大字符数,而`data-output`则用于指定一个元素ID,该元素将实时显示当前输入的字数。 以下是如何使用该插件的基本步骤: 1. 首先,确保在HTML文档中引入jQuery库(例如,`...

    jQuery做的文本框字数统计/限制插件

    这个插件可能使用了jQuery的事件监听功能,如`keyup`、`keydown`或`input`事件,来捕获用户在文本框中的每一次输入行为,然后通过JavaScript的字符串方法(如`length`属性)来计算字符数,并更新显示的剩余字数。...

    JavaScript实现统计文本框Textarea字数增强用户体验

    为了达到这一目的,许多网站,如Twitter,引入了一个便捷的功能:在文本框(Textarea)中实时显示用户输入的字数,并提示剩余可输入的字符数。这个功能不仅帮助用户了解他们是否达到了字数限制,还减少了因超出限制...

    动态计算文本框内的可输入字数

    在本场景中,"动态计算文本框内的可输入字数"是一个用户界面(UI)设计的问题,主要应用于网页、桌面应用或移动应用中,目的是为用户提供即时反馈,显示当前文本框内还能输入多少字符。这个功能对于限制用户输入长度...

    jQuery文本框输入文字计数显示代码.zip

    "jQuery文本框输入文字计数显示代码.zip" 提供了一个解决方案,帮助开发者创建一个能够实时显示输入字符数的文本框,以此来限制用户的输入长度,提升用户体验,特别是在需要用户填写特定字数限制的表单场景下。...

    jQuery 文本文本框输入字符限制插件.

    "jQuery 文本文本框输入字符限制插件"是一个专门针对这种情况设计的解决方案,它模仿了 Twitter 的输入限制功能,为用户提供了一种友好的提示方式,避免了简单地阻止用户输入,而是以一种优雅的方式告知用户剩余可...

    自定义Editext控制输入字数限制的文本框Editext

    为了实现这一功能,我们可以自定义一个 `EditText` 组件,以便在用户输入时动态显示剩余可输入字数。下面将详细介绍如何实现这个功能。 首先,我们需要创建一个新的 `EditText` 子类,例如命名为 `LimitedEditText`...

Global site tag (gtag.js) - Google Analytics