验证插件使用笔记
$().ready(function() {
jQuery.validator.addMethod("byteRangeLength", function(value, element, param) {
var length = value.length;
for(var i = 0; i < value.length; i++){
if(value.charCodeAt(i) > 127){
length++;
}
}
return this.optional(element) || ( length >= param[0] && length <= param[1] );
}, $.validator.format("请确保输入的值在{0}-{1}个字节之间(一个中文字算2个字节)"));
$form.validate({ rules: { stopoverContain: {
byteRangeLength:[6,20], remote: { url: pageConfig.url.validCityCode, type: "post", dataFilter: function (str) {//接收后台传过来的数据,再进行判断(str是后台返过来的值)。这里的后台逻辑是,后台如果返回的是空,则验证成功,否则不成功
return str === ''; }, data: {//要传给后台的参数 city: function () { return $form.find('[name="stopoverContain"]').val().toUpperCase(); } } }, judgeOtherFunc:[function (value,element) {//自定义验证方法 var reg=/^([A-Z]{2}|[A-Z]{4})\d{1,5}-\d{1,5}$/; return reg.test(value) }] }, }, messages: {
remote:"输入的city码不存在,请重新输入",
judgeOtherFunc:"请输入CA90-100或CAAF90-100格式的航班号"
})
});
$.validator.addMethod("airLineCodeR", function(value) {
var flag = false;
$.ajax({
type:"POST",
url: options.config.url.checkData,
async:false,//同步
data:{json:JSON.stringify({'airLineCode':value})}
}).then(function (res) {
res.error.code==0 && (flag=true);
});
return flag;
},"航司不存在,请修改后提交");
页面上配置remote:https://blog.csdn.net/qishuo_java/article/details/50678358
使用ajax自定验证方法:https://blog.csdn.net/w1014074794/article/details/39552715