如何用JS限制text文字不得少于8个汉字

解决方案 »

  1.   

    可以通过监听text的onpropertychange事件。
    判断text.value.length
      

  2.   


    input.onkeyup = function(){
        var znLen = 0;
        var str = this.value,len=str.length;
        for(var i=0;i<len;i++){
            var _code = String.charCodeAt(str[i]);
            if(_code>255){
                znLen ++;
            }
        }
        if(znLen<8){
            console.log('少于8个汉字')
        }
    }
      

  3.   

    <input type=text onblur="if(this.value.length<8)this.focus()">
      

  4.   

    基本就这样了 如果想更细致点 比如字母数字符号算一个字符,汉字和全角 算两个字符
    (匹配汉字和全角 正则:  /[^\x00-\xff]|[\u4E00-\u9FA5]/)
      

  5.   

    中文的unicode码的范围4e00-9fa5
    关于编码知识:http://wenku.baidu.com/view/f22eb66b25c52cc58bd6be50.html