我很難找出爲什麼我的AJAX代碼在表單提交中發送兩次。AJAX jQuery表單提交發送兩次POST&OPTIONS
選項請求和POST請求 - 兩個狀態消息都是200。 POST請求成功並返回我想要的內容,這樣很好。我不希望發生OPTIONS請求。
認爲它可能與CORS有關或解綁定提交事件處理程序?
如果任何人都可以提供幫助,那就太好了。
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form id="loginform">
Username: <input type="text" class="rname" name="username" value=""/>
Password: <input type="text" class="rpass" name="password" value=""/>
<input type="submit" value="Submit" />
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
scripts = function() {
var _t = this;
var authenticateUrl = "http://...";
this.events = function() {
$('#loginform').submit(_t.loginEvent);
};
this.loginEvent = function (event) {
event.preventDefault();
var $form = $(this);
var _name = $form.find(".rname").val();
var _pass = $form.find(".rpass").val();
var submitData= {username: _name,password: _pass};
submitData = JSON.stringify(submitData);
$.ajax({
type: 'POST',
contentType: "application/json",
dataType: 'json',
url: authenticateUrl,
data: submitData,
success: function(data) {
console.log("Success loginEvent");
if (data.error) {
console.log("Unsuccessful Login");
} else {
console.log("successful Login");
}
}
});
};
this.init = function() {
_t.events();
};
this.init();
return (this);
};
var LZ = new scripts();
</script>
</body>
</html>
可能的重複[爲什麼我得到一個OPTIONS請求,而不是GET請求?](http://stackoverflow.com/questions/1256593/why-am-i-getting-an-options-request-instead-請求的請求) –