1

当使用 jQuery 达到限制时,如何将字数限制设置为 200 并且不允许输入并在文本区域旁边显示警告?用户可以输入中文或英文字符。

中文和英文的计算方式一样吗?

我只是使用内置函数设置长度[1,200]

4

3 回答 3

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();
        }
    });
});

在此处查看结果(只需更改10200)。

于 2013-07-25T03:19:53.880 回答
0

它说一些与中文有关的东西,但对我来说没有中文限制。

jQuery 文本计数器插件

于 2015-07-07T08:59:35.280 回答
0

这是一个简单的答案。想法来自This GitHub Repo
中文和英文的计算方式不一样,如果按字节长度计算,你会发现中文是英文的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; 
}
于 2018-01-24T10:03:31.187 回答