我正在尝试创建一个规则,检查电子邮件主机是Hotmail,这样我就可以显示一条消息,要求检查他们的垃圾邮件文件夹(当人们使用Hotmail时,我的大多数邮件都会转到该文件夹)。
这是我到目前为止所做的:
jQuery.validator.addMethod("isHotmail", function(value, element) {
var email = $("#email").val();
var emailHost = email.split('@')[1].split('.')[0];
if(emailHost=='hotmail'){return true}
}, "* you are using Hotmail, please check your spam folder");
和
rules: {
email: {
required:true, email: true, isHotmail : true
}
.
.
这不起作用,如果我输入Hotmail电子邮件地址没有任何反应,我怀疑这是因为return语句。
任何人都可以帮我解决这条规则吗?
非常感谢
答案 0 :(得分:1)
如果它不是Hotmail,也许你需要return false;
?
尝试更改行:if(emailHost=='hotmail'){return true}
要:
return (emailHost.toLowerCase()=="hotmail");
var email
与value
不一样?
jQuery.validator.addMethod("isHotmail", function(value, element) {
var email = value;
var emailHost = email.split('@')[1].split('.')[0];
return (emailHost.toLowerCase()=='hotmail');
}, "* you are using Hotmail, please check your spam folder");
答案 1 :(得分:0)
当输入包含“hotmail”时,您需要返回false。而不是
if(emailHost=='hotmail'){return true}
使用
if(emailHost=='hotmail')
{
return false;
}
return true; //for when the input does not contain hotmail
上查看此操作