网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

JqueryValidate根据其他元素的事件来触发单个元素的异步校验-创新互联

场景:在做一个车辆信息管理模块,而车牌是通过车牌颜色和车牌号码来确定唯一性的,录入车牌信息时需对车牌进行唯一性校验。

网站建设公司,为您提供网站建设,网站制作,网页设计及定制网站建设服务,专注于成都企业网站定制,高端网页制作,对岗亭等多个行业拥有丰富的网站建设经验的网站建设公司。专业网站设计,网站优化推广哪家好,专业网站推广优化,H5建站,响应式网站。

对车牌号的异步校验规则

 1 rules:{
 2             plateNumber:{
 3                 remote:{
 4                     url:'${ctx}/bu/vehicleInfo/checkPlateNumUniqueness',
 5                     data:{
 6                         plateNumber:function(){
 7   return $("#plateNumber").val();
 8                         },
 9                         plateColor:function(){
10   return $("#plateColor").val();
11                         }
12                     }
13                 }
14             }
15         },
16         messages:{
17             plateNumber:{
18                 remote:'已存在相同车牌号码'
19             }
20         }

车牌颜色变动的时候通过触发车牌号码的校验规则来对唯一性进行校验

$("#plateColor").change(function() {
//由于是根据车牌号码和车牌颜色来判断车牌号唯一性的,故车牌颜色改变时也应该校验车牌号唯一性    $("#plateNumber").removeData('previousValue');
var plateNum = $("#plateNumber").val();
if (plateNum != '') {
        $("#plateNumber").removeData('previousValue');
        validator.element($("#plateNumber"));
    }
});

这里遇到了一个问题,就是车牌颜色变动过一次触发了唯一性校验之后,再去变动车牌颜色就无法再次触发唯一性校验了,

后来在这里找到了答案(http://stackoverflow.com/questions/2710548/how-do-i-use-jquery-validate-remote-validation-on-a-field-that-depends-on-anothe)

原因是触发了一次之后会有缓存,需要调用这removeData方法先把缓存清理掉才能再次触发。


当前名称:JqueryValidate根据其他元素的事件来触发单个元素的异步校验-创新互联
网页链接:http://bjjierui.cn/article/ejgsi.html

其他资讯