中文为2个字节
function limitLength(obj, length) { var desc = obj.value;
desc = desc.replace(/[\u4e00-\u9fa5]/g,"   ");

        if(desc.length >= length) { 
         alert("");//这里怎么用substr呢?注意前提“中文为2个字节”
        } 
}
  <textarea name="blogdesc" cols="50" rows="5" onkeyup="limitLength(this,200)">恍恍惚惚恍恍惚惚恍恍惚惚和</textarea>

解决方案 »

  1.   

    <script>
    function limitLength(obj, length) { 
        var desc = obj.value; 
        desc = desc.replace(/[\u4e00-\u9fa5]/g,"  ");     if(desc.length >= length) { 
            alert(substr(obj.value,length)); 
        } 

    function substr(str,length){
        var l=0,i=0;
        while(l<length){
            l+=1;
            if(str.substring(i,1).match(/[\u4e00-\u9fa5]/))l+=1;
            i+=1;
        }
        return str.substring(0,i-1);
    }
    </script>  <textarea name="blogdesc" cols="50" rows="5" onkeyup="limitLength(this,20)">恍恍惚惚恍恍惚惚恍恍惚惚和 </textarea>
      

  2.   

    length不正确我前面有
    desc = desc.replace(/[\u4e00-\u9fa5]/g,"  "); 
      

  3.   

    <script>
    function limitLength(obj, length) { 
        var desc = obj.value; 
        desc = desc.replace(/[\u4e00-\u9fa5]/g,"  ");     if(desc.length >= length) { 
            alert(substr(obj.value,length)); 
        } 

    function substr(str,length){
        var l=0,i=0;
        while(l<length){
            l+=1;
            if(str.substring(i,1).match(/[\u4e00-\u9fa5]/))l+=2;//一个中文是相当于3个英文
            i+=1;
        }
        return str.substring(0,i-1);
    }
    </script>  <textarea name="blogdesc" cols="50" rows="5" onkeyup="limitLength(this,20)">恍恍惚惚恍恍惚惚恍恍惚惚和 </textarea>
      

  4.   

    <script> 
    function limitLength(obj, length) { 
        var desc = obj.value;  
        alert(substr(obj.value,length)); 

    function substr(str,length){ 
        var l=0,i=0; 
        while(l <length && i<str.length){ 
            l+=1; 
            if(str.substring(i,i+1).match(/[\u4e00-\u9fa5]/))l+=2;//一个中文是相当于3个英文 
            i+=1; 
        } 
        return str.substring(0,i); 

    </script>   <textarea name="blogdesc" cols="50" rows="5" onkeyup="limitLength(this,20)">恍恍惚惚恍恍惚惚恍恍惚惚和 </textarea>