遇到ajax執行順序問題 時可以注意看下 ajax 的 async屬性
1.ajax預設async是為ture的,當async: true 時,ajax請求是非同步的。ajax請求和其後面的操作是非同步執行的,那麼當頁面還未執行完,就可能已經執行了 ajax請求後面的操作。當async:false時,ajax請求為同步,這時ajax請求將整個瀏覽器鎖死,直到請求結束。
2.例如:
用ajax進行表單提交,新增乙個採購計畫(乙個物件)到資料庫裡,提交之前需要判斷資料庫是否有相同的編號(乙個字段)
這時就需要在ajax 裡呼叫另外乙個ajax,被呼叫的ajax需要設定 async:false。
下邊是我的**:
提交的ajax
var myflag=true;判斷是否重複的ajaxvar addsubmit = function ()
checkno();//執行此方法時下邊的操作不能執行,即checkno方法要設定成同步的
if(!myflag)if($("#amounttotaladd").val()=="")if($("#accountrefadd").val()=="")
return true;
},success:function (data) else
}});
}
var checkno=function () ,後台:success:function (data) }})
}
@responsebody
public ajaxresult checkplanno(string account)catch (exception e)
return result;
}
jQuery Ajax執行順序問題
如下 document ready function error function attr01 wijgrid 我理想的是先ajax得到資料,再繫結到控制項,可事實是先執行的繫結,後執行ajax方法,js不是按順序執行嗎?預設情況下jquery的ajax是非同步執行的,所以它在去獲取資料的同時也在...
alert 執行順序問題
hello world 先彈出1,彈2,彈3,之後span才改變背景色。why?alert會阻塞所有執行緒,而且alert會被優先執行。alert會阻塞所有執行緒,其中就包括gui渲染執行緒 所以顏色不變 和主線程 所以settimeout裡面的任務只是在1秒後被新增到了任務佇列裡面,但是沒有執行,...
jQuery Ajax執行順序問題
如下 document ready function error function attr01 wijgrid 我理想的是先ajax得到資料,再繫結到控制項,可事實是先執行的繫結,後執行 ajax 方法,js 不是按順序執行嗎?預設情況下jquery的 ajax 是非同步執行的,所以它在去獲取資料...