/**
* js截取字符串,中英文都能用
* @param str:需要截取的字符串
* @param len: 需要截取的长度
*/
function cutstr(str, len) {
var str_length = 0;
var str_len = str.length;
str_cut = new String();for (var i = 0; i < str_len; i++) {
a = str.charAt(i);
str_length++;
if (escape(a).length > 4) {
//中文字符的长度经编码之后大于4
str_length++;
}
//concat()方法用于连接两个或多个数组
str_cut = str_cut.concat(a);
if (str_length >= len) {
str_cut = str_cut.concat("");
return str_cut;
}
}
//如果给定字符串小于指定长度,则返回源字符串;
if (str_length < len) {
return str;
}
}
function lengthCheck(obj,len){
$(obj).bind('keyup', function () {
if ($(this).val().length > len) {
$(this).val(cutstr($(this).val(),len));
return;
}
});
}
<input id="data" name="data" type="text" onclick="lengthCheck(this,8);">