验证名称重复,基于easyui自定义验证
1 //定义一个检查点 2 var unExist=true; 3 //需要验证的标签绑定到事件 4 $('#un').blur(function(){ 5 //ajax异步请求 6 $.ajax({ 7 url :'emp_list?t2.username='+$('#un').val(), 8 dataType : "json", 9 type : "post", 10 success:function(rtn){ 11 //设置检查点值 12 unExist=rtn==''; 13 } 14 }); 15 }); 16 //修改内容时还原检查点 17 $('#un').keyup(function(){ 18 if(!unExist){ 19 unExist=true; 20 } 21 }); 22 //easyui自定义验证 23 $.extend($.fn.validatebox.defaults.rules, { 24 exist : { 25 validator : function() { 26 return unExist; 27 }, 28 message : "用户名已存在." 29 } 30 })
validType="exist['#cusername','#husername']" 传入两个参数:1:需要验证的域,2:隐藏域解决修改验证问题
$.extend($.fn.validatebox.defaults.rules, { exist: { validator: function(value,id){ var old=$(id[1]).val(); if(method=="update"&&value==old){ return true; } var data=$(id[0]).serializeJSON() var flag=$.ajax({ url:name+'_checkName', data:data, type:'post', cache:false, async:false, dataType:'json' }).responseText; return flag=="true"; }, message: '名称已存在' } });