我正在使用ajax驗證我的表單,我只是檢查用戶名和密碼是否正確。如果他們是正確的,我提交表格並轉到歡迎頁面,否則返回錯誤消息。如何在event.preventDefault()之後提交ajax .done()中的表單?
一切順利,但表單無法提交。我希望表單在數據== 1時被提交,使用$(「#login」)。submit();但它不起作用。
我繼續搜索,但我無法弄清楚問題所在。
任何幫助將不勝感激。
function check() {
$("#login").submit(function (event) {
event.preventDefault();
if($("#username").val()=="")
{
$("#usernamenull").html("username required <br />");
return false;
}
else if($("#password").val()=="")
{
$("#passwordnull").html("password required <br />");
return false;
}
var xhra=$.post("login.php",{username:$("#username").val(),password:$("#password").val()});
xhra.done(function (data) {
if (data==0) {
$("#message").html("username or password incorrect.<br />");
}
else if (data==1) {
$("#message").html("good.<br />");
$("#login").submit();//I want the form to be submited here,but doesn't work.
}
});
xhra.fail(function() {
alert("oops : "+xhra.status+" "+xhra.statusText+".\n");
});
})
};
<!DOCTYPE HTML>
<html>
<head>
<script src="jquery-3.0.0.js"></script>
<script src="test.js"></script>
</head>
<body>
<form name="login" id="login" action="welcome.php" method="post" >
username:
<br />
<input type="text" name="username" id="username">
<br />
<span id="usernamenull" style="color:red"></span>
<br />
password:
<br />
<input type="password" name="password" id="password" />
<br />
<span id="passwordnull" style="color:red"></span>
<br />
<br />
<input type="submit" name="mysubmit" id="mysubmit" value="login" onclick="check()" />
<br />
<br />
<span id="message"style="color:red"></span>
<br />
</form>
</body>
</html>
@Marcus H謝謝。我不是以英語爲母語的人。我希望你們知道我在說什麼。 – mulder