jquery扩展实现input框字符长度限制中文2个字符,英文1个字符


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="jquery-3.2.1.min.js"></script>
<script>

$(function () {
$('input[type="text"]').on('input', function (e) {
var $that = $(this);
var limitLen = $that .attr("maxcodelength") //定义所需字节数
$that.attr('maxlength',limitLen);
setTimeout(function(){
var value = $that.val(),
reg = /[\u4e00-\u9fa5]{1}/g, //中文
notReg = /\w{1}/g; //非中文
var resultCn = value.match(reg);
var resultEn = value.match(notReg);
if(resultCn){
limitLen = limitLen - (resultCn.length*2);
}
if(resultEn){

limitLen = limitLen - resultEn.length;
}
if(limitLen<=0){
var finalLen = value.length+limitLen;
value = value.substring(0,finalLen);
$that.attr('maxlength',limitLen);
$that[0].value = value;
}
},0);

});
});
</script>
</head>
<body>
请输入:<input type="text" maxcodelength="10">
<input type="text" maxcodelength="5">
</body>
</html>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM