0
关于jQuery .validate插件,我想添加/编辑/替换到电子邮件的方法,以适应两个额外的规则/条件。编辑/添加到jQuery验证电子邮件方法规则?
电子邮件方式(可以在这里进行测试:https://jqueryvalidation.org/email-method/)允许以下通过,但我希望他们失败:
- 测试@ test.com
- 测试@测试
我该如何做到这一点?
关于jQuery .validate插件,我想添加/编辑/替换到电子邮件的方法,以适应两个额外的规则/条件。编辑/添加到jQuery验证电子邮件方法规则?
电子邮件方式(可以在这里进行测试:https://jqueryvalidation.org/email-method/)允许以下通过,但我希望他们失败:
我该如何做到这一点?
正如@charlietfl所说,重写它。
我的新方法是:
$.validator.addMethod('betterEmail', function (value, element) {
return this.optional(element) || /^(([^<>()\[\]\\.,;:\[email protected]"]+(\.[^<>()\[\]\\.,;:\[email protected]"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(value);
}, "Please enter a valid email address.");
而且我现在的规则是这样的:
rules: {
email: {betterEmail: true}
}
在乘坐其作为文档例子https://jqueryvalidation.org/jQuery.validator。方法/ – charlietfl
或使用'$ .validator.addMethod()' – charlietfl
创建自己的自定义名称我找到了“email”规则,所以现在我被困在正确的正则表达式中。 “email”规则是/^[a-zA-Z0-9。!#$%&'* + \/=?^ _'{|}〜 - ] + @ [a-zA-Z0-9]( ?:[A-ZA-Z0-9 - ] {0,61} [A-ZA-Z0-9])(?:??\ [A-ZA-Z0-9](在[a-ZA- Z0-9 - ] {0,61} [a-zA-Z0-9])?)* $/ – Warren