JQuery使用Ajax同步提交資料
阿新 • • 發佈:2019-02-14
Ajax請求預設的都是非同步的
如果想同步 async設定為false就可以(預設是true)
var html = $.ajax({
url: "some.php",
async: false
}).responseText;
或者在全域性設定Ajax屬性
$.ajaxSetup({
async: false
});
如果想同步 async設定為false就可以(預設是true)
var html = $.ajax({
url: "some.php",
async: false
}).responseText;
或者在全域性設定Ajax屬性
$.ajaxSetup({
async: false
});
再用post,get就是同步的了。
如果可以讓函式阻塞,直到伺服器端返回結果時才繼續執行,這個問題便可以輕易解決,JQuery實現Ajax提交資料的基本方法如下:
1 2 3 4 5 6 7 8 9 10 |
$.ajax({
type: 'POST' ,
beforeSend: function (){},
async: false ,
url: '' ,
data: '' ,
dataType: 'html' ,
error: '' ,
success: ''
});
|
在這裡,我們重點關注引數:async,如果不顯示定義這個引數,預設非同步提交(async=true),如果需要同步提交,將async顯示定義成false!
注意,同步請求將鎖住瀏覽器,使用者其它操作必須等待請求完成才可以執行。