思路:
20个汉字即是40个字符,获取输入的字符串的字符长度,字符长度/2向上取整超过20的话截取字符长度/2 == 20的字符串
<input type="text" id="#text"/>
//获取字符串的字符长度
function getLength(s){
var length = 0;
for(var i = 0;i < s.length;i++){
if(s.charAt(i) >= 0 || s.charAt(i) <= 128) length += 1;
else length += 2;
}
return length;
}
var str_20 = "";
$("#text").keyup(function(){
var $self = $(this);
var $self_value = $self.val().trim();
var length = getLength($self_value))/2;
if(Math.ceil(length) == 20){
str_20 = $self_value;
}
else if(Math.ceil(length) == 20){
$self.val($self_value);
}
});