方式一和方式二总体区别不大,可以算作同一种方法与方法三一起使用可以校验最大输入字数和提示还可输入多少字符(onchange()事件)
方式一
$.validator.addMethod(“stringMaxLength”,function(value,element,params){
var length = value.length;
alert(“value:”+length +"------params:" + params[0]);
for( var i = 0; i < value.length; i++ ) {
if( value.charCodeAt(i) > 19967 ) {
length++;
}
}
alert("++length:"+length);
//if (length>params[0])
return length>params[0]?false:true;
},“最大长度不能超过{0}个字符,一个汉字为两个字符”);
$.validator.addMethod("stringMaxLength",function(value,element,params){
var length = value.length;
alert("value:"+length +"------params:" + params[0]);
for( var i = 0; i < value.length; i++ ) {
if( value.charCodeAt(i) > 19967 ) {
length++;
}
}
var res="";
var result = false;
alert("++length:"+length);
var maxlenths =params[0]*2;
if (length>maxlenths){
res = "最大长度不能超过"+params[0]+"个字符,一个汉字为两个字符";
result = false;
}else if (length==maxlenths) {
res = "已输入最大长度"+params[0]+"个字符";
result = false;
}else{
var index = maxlenths-length;
res = "还可输入不超过"+index+"个字符,一个汉字为两个字符";
}
$.validator.messages.stringMaxLength = res;
return result;
});
方式二
$.validator.addMethod("stringMaxLength",function(value,element,params){
var length = value.length;
alert("value:"+length +"------params:" + params[0]);
for( var i = 0; i < value.length; i++ ) {
if( value.charCodeAt(i) > 19967 ) {
length++;
}
}
var res="";
var result = true;
alert("++length:"+length);
var maxlenths =params[0]*2;
if (length>maxlenths){
res = "最大长度不能超过"+params[0]+"个字符,一个汉字为两个字符";
result = false;
}/*else if (length==maxlenths) {
res = "已输入最大长度"+params[0]+"个字符";
result = false;
}else{
var index = maxlenths-length;
res = "还可输入不超过"+index+"个字符,一个汉字为两个字符";
//result = false;
}*/
//$.validator.messages.stringMaxLength = res;
$(element).data('error-msg',res);
return result;
}, function(params, element) {
return $(element).data('error-msg');
});
方式三
function changetext(){
var value =$("#content").val();
var params =800;
var length = value.length;
for( var i = 0; i < value.length; i++ ) {
if( value.charCodeAt(i) > 19967 ) {
length++;
}
}
var res="";
var result = true;
//alert("++length:"+length);
var maxlenths =params;
/if (length>maxlenths){
res = “最大长度不能超过”+params+“个字符,一个汉字为两个字符”;
result = false;
}else if (length==maxlenths) {
res = “已输入最大长度”+params+“个字符”;
result = false;
}else{
var index = maxlenths-length;
res = “还可输入不超过”+index+“个字符,一个汉字为两个字符”;
}/
if (length<=maxlenths){
var index = maxlenths-length;
res = “还可输入不超过”+index+“个字符,一个汉字为两个字符”;
}
$("#font_sise").html(res);
return result;
}