我們在用JQuery的Ajax從后臺提取數據后想把它賦值給全局變量,但是卻怎么都賦不進,為什么呢?
原因其實很簡單,我們用的Ajax是異步操作,也就是說在你賦值的時候數據還沒提取出來,你當然賦不進去,所以只要改成同步操作就行~
方法1:先設置同步在進行Ajax操作
1
2
3
4
5
6
7
|
//在全局或某個需要的函數內設置Ajax異步為false,也就是同步 $.ajaxSetup({ async : false }); //然后再進行你的Ajax操作 $.post(地址,參數, function (data, status){ if (status == "success" ){ //賦值給全局變量}else{ alert( "wrong" );}}); |
方法2:直接用$.ajax
1
2
3
4
5
6
|
$.ajax({ type : "post" , url :地址, data : "參數" +參數的值, async : false , success : function (data){ //賦值給全局變量;}}); |
實例代碼: