您的位置:首页 > Web前端 > JavaScript

限制文本框输入N个字符的js代码

2010-05-13 00:00 761 查看
所以要做的就是
1.  首先区分出来是两个字节的字符还是一个字节的字符;
2.  使用charCodeAt和String.fromCharCode即可进行相互转换。
代码如下:
function validatePostponeValue(obj, objLength) 
{ 
var executeResult = false; 
var value = obj.value; 
var byteLen=0,len=value.length; 
var newValue = ""; 
 if(value) 
 { 
  for(var i=0; i<len; i++) 
  { 
  if(value.charCodeAt(i) > 255) 
  { 
    byteLen += 2; 
  if(byteLen <= 18) 
  { 
  //alert(String.fromCharCode(value.charCodeAt(i))); 
  newValue += String.fromCharCode(value.charCodeAt(i)); 
  }  
  } 
  else 
  { 
  byteLen ++; 
  if(byteLen <= 19) 
  { 
  //alert(String.fromCharCode(value.charCodeAt(i))); 
  newValue += String.fromCharCode(value.charCodeAt(i)); 
  } 
  } 
  }  
  } 
  
  if(byteLen <= 0) 
  { 
  //alert("不能为空!"); 
  obj.focus(); 
  } 
  else if(byteLen > objLength) 
  { 
  alert("最多只能输入十个汉字(20个字符)。"); 
  obj.focus();  
  obj.value = newValue;//value.substr(0, objLength -1); 
  } 
  else 
  { 
  executeResult = true; 
  } 
  
  return executeResult; 
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: