当使用jQuery达到限制时,如何将字数限制设置为200并且不允许输入并在文本区域旁边显示警告?用户可以输入中文或英文字符。
中文和英文是否以同样的方式计算?
我刚使用了build in function设置长度[1,200]
答案 0 :(得分:0)
我不知道中文是否会起作用,但你可能会这样做:
<强> HTML 强>
<input type="text" name="input" />
<span></span>
<强>的jQuery 强>
$(function(){
$('input[name="input"]').keyup(function(){
if($(this).val().length > 10){
$('span').html('You can\'t type more than 10 characters!');
}else{
$('span').empty();
}
});
});
请参阅result here(只需将10
更改为200
)。
答案 1 :(得分:0)
它说的是与中文相关的内容,但对我来说不适用中文。
答案 2 :(得分:0)
这是一个简单的答案。
想法来自This GitHub Repo
中文和英文的计算方式不一样,如果用byteLength计算,你会发现中文是英文的2倍
你可以尝试下面的代码。
/*useByteLength
function checkTextLength($element) {
txtCount = $element.val().replace(/[^\x00-\xff]/g, "pp").length +
($element.val().match(/\n/g) || []).length;
return txtCount;
}
如果你的病情需要用同样的方式计算中文和英文,你可以尝试一下。
/*count Chinese and English in the same way
function checkTextLength($element) {
txtCount = $elements.val().length + ($elements.val().match(/\n/g) || []).length;
return txtCount;
}