![](/img/trans.png)
[英]click() in javascript doesn't work but in console it works fine
[英]Javascript doesn't work on WAMP but works fine without it
我刚刚开始学习PHP和WAMP。 在此之前,我使用HTML,CSS和JS创建了一组网页。 JS用于验证表单,如果一切顺利,它将跳转到将数据插入sql数据库的php页面。
简化的form.html和validation.js是:
function validation() {
var emailCheck = email.search(/^[a-zA-z0-9_]+\@[a-zA-z0-9_]+\.[a-zA-z]{2,3}$/);
if (emailCheck==-1) alert("Please enter a valid email address");
else document.getElementById("signup").action = "success.php";
}
表格代码
<form id="signup" class = "signup" method="POST">
.....
<input type="text" name="email" id="email" required/>
....
<button class = "button3" onclick = "validation()">Submit</button>
</form>
success.php只是将数据插入到mySQL数据库中。
现在,我在不使用localhost的情况下运行form.html,javascript可以完美运行。 如果我输入错误的内容,将显示警报窗口。
如果我使用WAMP运行localhost / form.html,则当我输入错误的内容时,javascript无法正常工作。 警报窗口不显示。 但是,当我通过验证时,它会成功跳转到success.php。
因此,我认为Javascript可以正常工作,但由于JavaScript是form.html和success.php之间的唯一连接,因此部分原因无法正常工作。
任何想法?
变量“电子邮件”是未定义的,因此您不能对未定义的变量使用搜索功能。 您需要首先获取电子邮件值。
function validation() {
var emailCheck = document.getElementById("email").value.search(/^[a-zA-z0-9_]+\@[a-zA-z0-9_]+\.[a-zA-z]{2,3}$/);
if (emailCheck==-1) alert("Please enter a valid email address");
else document.getElementById("signup").action = "success.php";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.