我在提交按钮上从page1.php调用javascript函数。在action属性中,我重定向到page2.php。在JavaScript的if条件中,如果未在java脚本函数中验证电子邮件,我想将控件重定向到page1.php。
答案 0 :(得分:0)
要阻止表单提交到action = page,除非经过验证,请调用javascript函数,如下所示:
<form onsubmit="return functionName()">
这样做是在提交表单之前请求javascript函数的正回报,所以如果它没有验证你可以:
return false;
并向用户显示错误消息,在这种情况下表单不会提交。
如果它确实可以
return true;
表格将照常提交。
答案 1 :(得分:0)
您不需要重新修改到另一个PHP脚本来进行javascript验证。需要说javascript在客户端运行。通过重新检索到另一个脚本,您可以通过电子邮件失去对表单输入字段的访问权限,因此为了再次进入另一个脚本,您必须将其提供给客户端并输入到html中。
点击提交按钮后,您可以轻松验证电子邮件:
<script type="text/javascript">
document.getElementById('submitButton').onclick=function(){
if(!validateEmail()){
alert("E-mail is not valid");
return false;
}
}
};
function validateEmail(email) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\
".+\"))@((\[[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,}))$/;
return re.test(email);
}
</script>