3
我有一个字段,可以包含电子邮件或移动(在我的情况下,手机是8位数字)。 我已经尝试了两种方法(两个示例都不起作用,因为'元素'没有验证方法):jQuery验证 - 如何验证一个字段与两个异或规则
第一种方法:创建自定义方法并在那里执行两个验证,但是接下来我必须创建自己的电子邮件和移动验证 - 我找不到如何在新方法中重用jQuery验证规则的方法。这是我想要的:
jQuery.validator.addMethod("mobileoremail", function(value, element) {
return this.optional(element) ||
element.validate({ rules: { digits: true, rangelength: [8, 8] } }) ||
element.validate({ rules: { email: true } });
}, "Invalid mobile or email");
第二种方法:创建依赖规则。而且在这种情况下,我找不到如何重用jQuery验证规则的方法。
{ myRules: {
rules: {
user: {
required: true,
email: {
depends: function(element) {
return !element.validate({ rules: { mobile: true } });
}
},
mobile: {
depends: function (element) {
return !element.validate({ rules: { email: true } });
}
}
}
}
}
}
太棒了!优雅的解决方 – marisks
谢谢,它有一个有趣的验证问题 –
我收到以下错误:TypeError:$ .validator.methods [method] is undefined。你有什么线索为什么? 无论如何,很好的解决方案! – Thrasher