关于INPUT 如何控制输入字符 如何控制一个input 标签 type 为text的文本框,可以输入最大长度为12个字节的一串,汉字占两个字节,非汉字占一个字节,就是说如果是全汉字,则可以输入6个汉字,如果是全字母,则可以输入12个字母,该如何去实现呢?请教大家 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给个实现提示:通过js脚本获取textbox输入内容,判断其长度(length)如果大于12则要求用户重新填写 var inputConent = $("#txt_content").val().length;//txt_content文本框id,但是取到的中文和英文的长度是一样的.如何区分它们呢?再查查... 对于普通用户而言,一个汉字和和一个非汉字它们都是一样的,以"www"和“我说我”为例,var inputConent = $("#txt_content").val().length;得到的长度是一样的,都是3 我想将input 的maxLength 设置成12,但是能够输入6个汉字,12个英文字符, var putLength = 0; var data = $("#txt_content").val(); //获取文本框输入内容 var rgExp = "[\u4e00-\u9fa5]"; //匹配中文正则式 //遍历输入字符串 for (var i = 0; i < data.length; i++) { var obj = data[i]; //如果字符为中文则长度加2,非中文则加1 if (obj.match(rgExp)) { putLength = putLength + 2; } else { putLength = putLength + 1; } } if (putLength > 12) { alert("输入字符长度超过限制,中文为6个,非中文为12个"); } 根据提示:以下写法也是正确的,并且效率上优于第一种写法:var putLength = 0; var data = $("#txt_content").val(); //获取文本框输入内容 //遍历输入字符串 for (var i = 0; i < data.length; i++) { if (data.charCodeAt(i) > 255) { putLength += 2; } else { putLength++; } } if (putLength > 12) { alert("输入字符长度超过限制,中文为6个,非中文为12个"); } 懂VB的进来看看,解释下这些符号的意义. 怎么定义一个类为另外一个类的子类? 急求MKV视频文件播放的方法。 webService项目引用其它类库时的问题 C#引用类型转换 asp.net实现批量下载 UDPclient异步receive()怎么实现? 手机发短信催报功能 C#用webbrowser在Form中嵌入并且操作Excel表格,如何让他不提示是否保存并取消保存? .net中一小段VB代码转换成C#代码的问题 关于Stream.Read出现无法从传输连接中读取数据: 由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作 关于反射的描述
通过js脚本
获取textbox输入内容,判断其长度(length)
如果大于12则要求用户重新填写
,但是取到的中文和英文的长度是一样的.如何区分它们呢?再查查...
以"www"和“我说我”为例,
var inputConent = $("#txt_content").val().length;得到的长度是一样的,都是3
我想将input 的maxLength 设置成12,但是能够输入6个汉字,12个英文字符,
var putLength = 0;
var data = $("#txt_content").val(); //获取文本框输入内容
var rgExp = "[\u4e00-\u9fa5]"; //匹配中文正则式 //遍历输入字符串
for (var i = 0; i < data.length; i++) {
var obj = data[i];
//如果字符为中文则长度加2,非中文则加1
if (obj.match(rgExp)) {
putLength = putLength + 2;
}
else {
putLength = putLength + 1;
}
}
if (putLength > 12) {
alert("输入字符长度超过限制,中文为6个,非中文为12个");
}
以下写法也是正确的,并且效率上优于第一种写法:var putLength = 0;
var data = $("#txt_content").val(); //获取文本框输入内容 //遍历输入字符串
for (var i = 0; i < data.length; i++) {
if (data.charCodeAt(i) > 255) {
putLength += 2;
}
else {
putLength++;
}
} if (putLength > 12) {
alert("输入字符长度超过限制,中文为6个,非中文为12个");
}