![](/img/trans.png)
[英]AJAX/JQuery: Submit form and call function without refreshing page
[英]Making a jQuery AJAX call from within a form submit function
長話短說:
示例代碼:
$("#theForm").submit(function() {
$.ajax({
url: theUrl,
type: "POST",
data: theData
}).done(function(theResponse) {
$("#someInput").val(theResponse)
$("#theForm").submit() // [2] Submit the form now
}).fail(function(jqXHR, textStatus) {
alert("Failure")
})
return false // [1] Prevent submission prior to AJAX call completing
})
我的問題是,這會產生無限循環。
此函數的最外層返回false
,以防止在AJAX調用完成之前提交表單。 在AJAX調用成功完成后,我試圖在done()
處理程序中實際提交表單。 但是,這只是遞歸地調用整個onSubmit函數。
如何在onSubmit處理程序中嵌套一個AJAX調用...這樣決定是否允許提交是由嵌套的AJAX函數驅動的,而不是它的封閉處理函數?
您的[2]部分需要直接在表單上進行。
$("#theForm")[0].submit()
這將繞過jQuery綁定事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.