我正在使用 jQuery,并且想检查电子邮件地址是否托管在免费电子邮件服务域(即 Yahoo、gmail、hotmail 等)。
下面的代码可以做到这一点,但不幸的是,我不知道足够的语法来将域名放入数组中,现在我可以检查(无需额外的 if 语句)电子邮件在本例中是否仅由雅虎托管。
是否有类似 if ($(this).val().indexOf("yahoo.com && gmail.com && hotmail.com && ... ") != -1)
?
这是脚本:
<script type="text/javascript">
$(document).ready(function(){
$('#bemail').click(
function(e){
e.preventDefault;
if ($(this).val().indexOf("Business email is required") != -1) {
$('#bemail').val("");
}
});
$('#bemail').blur(function() {
if ($(this).val().indexOf("yahoo.com") != -1)
{
$(this).val("Business email is required");
}
});
});
</script>
谢谢。
最佳答案
您可以创建一系列电子邮件服务,然后检查您的值以查看它是否等于您列出的任何电子邮件。您可以通过使用 for 循环将数组中的每个值与输入值进行比较来完成此操作。你会做这样的事情:
var freeServices = ["yahoo.com", "gmail.com"];
$('#bemail').blur(function() {
for(var i = 0; len = freeServices.length; i<len; i++) {
if ($(this).val().indexOf(freeServices[i]) != -1) {
$(this).val("Business email is required");
}
}
});
根据需要将电子邮件服务添加到数组,保留语法。
关于javascript - 使用 jQuery 检查电子邮件地址数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10556672/