我正在尝试使用 jQuery 来查看用户是否在我的文本框中输入了有效的电子邮件地址。基本上,我希望提交按钮在默认情况下保持禁用状态,但是在每个按键上我想查看电子邮件地址是否有效,然后我想启用该按钮。如果用户输入了有效的电子邮件,但随后又删除了部分使其再次无效(即@ 符号),我希望再次禁用提交按钮。
我在这里有一个部分工作的脚本。我的支票或 @ 符号效果很好,但我很难检查 .com、.co、.net、.org、.edu 等...由于某种原因,即使我没有输入,按钮也会一直启用电子邮件的有效“结尾”。
例如,“emailco@”被识别为有效的电子邮件。这是我的脚本:
<script>
$(document).ready(function() {
$('#email').bind('keyup', function(e) {
var email = document.getElementById("email");
if (email.value.search("@") != -1) {
if (
(email.value.search(".com") != -1)||
(email.value.search(".co") != -1)||
(email.value.search(".org") != -1)||
(email.value.search(".net") != -1)||
(email.value.search(".gov") != -1)||
(email.value.search(".biz") != -1)||
(email.value.search(".me") != -1)||
(email.value.search(".edu") != -1)) {
document.getElementById("email_go").disabled = false;
}
else {
document.getElementById("email_go").disabled = true;
}
}
else {
document.getElementById("email_go").disabled = true;
}
});
});
</script>