javascript控制文本框输入字符个数的问题
我想通过javascript控制一个文本框,只能输入10个数字,英文字母或半角字符,5个汉字或全角字符。这是我写的一个javascript测试脚本(可直接复制调试):<input name="test" onkeyup="strLen(name,value,10)">
<SCRIPT LANGUAGE=javascript>
<!--
function strLen(name,value,length){
if(value.replace(/[^\x00-\xff]/g,"xx").length>=length)
{
var html = "<input name='"+name+"' onkeyup='strLen(name,value,"+length+")' value='"+value+"' maxlength='"+value.length+"'>"
document.all(name).outerHTML = html;
//alert(html);
}
}
//-->
</SCRIPT>
可是这样写英文和数字的输入都没有问题,中文输入就有问题了。当输入5个中文以后,继续输入中文,输入的内容竟然跑到文本框外面去了(请看附件)。希望高手们帮我看看,或者有更好的方法,也请不吝赐教。
[[it] 本帖最后由 菜鸟也疯狂 于 2008-10-27 09:30 编辑 [/it]]