![](/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.