所以要做的就是
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;
}
限制文本框输入N个字符的js代码
2021-05-25 21:28:04声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。 如涉及版权问题,请提交至online#300.cn邮箱联系删除。
热门文章