`
highfly-s
  • 浏览: 102125 次
  • 性别: 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文本框输入文字字数限制提示代码.zip

    本资源“jQuery textarea文本框输入文字字数限制提示代码.zip”提供了一个实用的功能,即对textarea输入框进行字数限制,并实时显示当前已输入的字符数,这对于创建表单、评论区或任何需要限制用户输入的场景非常...

    js网页设置的限定(例子,代码)

    具体实现方式为获取输入框中的值,并使用`length`属性检查长度是否在1到10个字符之间。如果超出这个范围,将弹出警告信息并阻止表单提交。 ```javascript var name = $(".cusorName").val(); if (name.length &gt; 10 ...

    2022年职称计算机windowsxp练习题Windows的界面(三).docx

    通过"开头"菜单的"搜寻",选择"全部文件和文件夹",在"包含文字或文件名"中输入"*.exe","在这里查找"输入"本地硬盘",然后进行搜寻。 12、使用"经典'开头'菜单"删除"我的文件夹"快捷方式并恢复程序默认排序: 右键...

    多媒体教室

    学生可以在输入框中输入文字来同教师进行交流,输入文字后敲回车键即可。也可以通过下拉框选择系统提供的默认文字,并敲回车键。  3.5 自动接收 正常条件下,学生机软件只要运行,就会自动登录系统,同时自动检测...

    js使用小技巧

    ENTER键可以让光标移到下一个输入框 (event.keyCode==13)event.keyCode=9"&gt; 文本框的默认值 (this.defaultValue)"&gt; title换行 obj.title = "123&#13sdfs&#32" 获得时间所代表的微秒 var n1 = new Date("2004-...

    视易神通夜总会5.0安装包

    10.在点单录入、赠品管理、外卖冲帐窗口中增加物品拼音筛选功能(在条码输入框中输入拼音首字母)。 11.开房套餐改为可以退单。 12.在酒水退单查询中加一个补打的功能,并且能按查询出来的数据进行汇总打印。 13....

Global site tag (gtag.js) - Google Analytics