我有这个小 javascript 来检查电子邮件是否有效,我检查客户端,因为它不是 100% 重要的是邮件是有效的,我不想重定向用户只是为了检查。
问题是弹出窗口确实出现了,但仍然插入了用户值
<script>
function popup()
{
var email = document.getElementById("email").value;
var atpos=email.indexOf("@");
var dotpos=email.lastIndexOf(".");
if (document.getElementById("email").value == "") {
alert("Enter an email");
return false;
}
else if (atpos<1 || dotpos<atpos+2 || dotpos+2>=email.length) {
alert("The email is not valid");
return false;
}
else
window.location = "email.php";
return true;
}
</script>
这是HTML表单
<form action="email.php" accept-charset="UTF-8" class="signup_form" id="signup_form" method="post">
<input class="txt accent-color colorize_border-color required" id="email" name="email" placeholder="Indtast E-mail her" data-label-text="Email" type="email">
<input class="submit button big btn" id="submit_button" name="submit" value="Deltag nu!" onclick="return popup()" type="submit">
</form>
如果我删除“类型提交”它可以工作,但我没有在下一页上获得带有 $_POST 的值,它们为空。
有什么办法可以解决这个问题?