- $(function(){
- validateRules();
- });
- /**
- * 自定义表单校验规则
- */
- function validateRules(){
- $('#mainForm').validate({
- ignore: [], //验证隐藏元素
- onkeyup:false,
- rules: {
- meetingType:{
- required:true
- },
- userTypeOption:{
- required:true
- },
- loginName:{
- required:true,
- maxlength:30,
- isName:true,
- remote:{ //远程验证登录名
- url:'/userInfo/checkLoginName',
- // data:{},若没自定义参数,他默认会把表单上name为loginName元素的值发送到后台
- dataFilter:function (data) {
- var data = eval('('+data+')');
- //他需要后台返回的是布尔值,若后台返回的不是布尔值,可以手动给他布尔值
- return data.code == 2 //1:登录名不可用 2:登录名可用
- }
- },
- //备注:若你后台返回的就是布尔值可以直接这样写
- //remote:'/userInfo/checkLoginName'
- },
- userName:{
- required:true,
- maxlength:30
- },
- npcNumber:{
- required:true,
- digits:true
- },
- passWord:{
- required:true
- },
- passWord2:{
- required:true,
- equalTo:'#passWord'
- },
- mobileNumber:{
- required:true,
- isMobile:true, //该验证规则为自定义规则,代码在下面
- remote:{ //远程验证手机号
- url: "/userInfo/checkPhone",
- dataFilter:function(data){
- var data = eval('('+data+')');
- return data.code == 1 //1:手机未注册 -1:手机已注册
- }
- }
- }
- },
- messages: {
- meetingType:{
- required:'请选择所属大会类型'
- },
- userTypeOption:{
- required:'请选择用户类别'
- },
- loginName:{
- required:'请输入登录名称',
- maxlength:'登录名称不能超过30个字符',
- remote:'该登录名已存在服务器'
- },
- userName:{
- required:'请输入用户姓名',
- maxlength:'用户名称不能超过30个字符'
- },
- npcNumber:{
- required:'请输入代表证号',
- digits:'请输入数字'
- },
- passWord:{
- required:'请输密码',
- },
- passWord2:{
- required:'请再次输入密码',
- equalTo:'两次密码输入不一致'
- },
- mobileNumber:{
- required:'请输入手机号',
- remote:'这个手机号已存在'
- }
- },showErrors:function(errorMap,errorList) {
- //在这里改变他的默认提示消息,本人用的是弹窗的形式,只弹出第一条验证未通过的错误消息
- if(errorList.length > 0){
- layer.msg(errorList[0].message,{time:2000})
- }
- }
- });
- }
- /**
- * 扩展自定义验证规则
- */
- jQuery.validator.addMethod("isMobile", function(value, element) {
- var length = value.length;
- var reg = /^1[358]{1}\d{9}$/;
- return this.optional(element) || (length == 11 && reg.test(value));
- }, "手机号格式不正确");
- jQuery.validator.addMethod("isName", function(value, element) {
- var reg = /^[0-9a-zA-Z]{4,20}$/;
- return this.optional(element) || (reg.test(value));
- }, "登录名必须是4-20位的字母和数字");
jQuery validate远程验证跟只显示第一条未通过结果
猜你喜欢
转载自my.oschina.net/u/3483680/blog/1823673
今日推荐
周排行