解決Ajax全域性變數賦值的問題

2021-09-01 17:51:08 字數 556 閱讀 4272

在做專案的過程中,以下**:在1處a為0。然後通過乙個ajax請求乙個值為1的data賦予a,在2處a為1。然後來到3這裡的時候,a還是為0。通過查詢網路,得出原因是ajax預設的是非同步傳輸資料,在2處的a的scope只在ajax方法內部。

//1

var a = 0;

$.ajaxsetup();

$.get("a.action", function(data) );

//3alert(a);

為了解決上面所遇到的問題,我們把ajax非同步傳輸改為同步。

在與ajax方法之前同乙個作用域的位置,設定為同步傳輸。

//設定為同步傳輸

$.ajaxsetup();

//1var a = 0;

$.ajaxsetup();

$.get("a.action", function(data) );

//3alert(a);

最好不要把同步傳輸的設定放在全域性範圍內,否則設定之後的ajax請求都為同步的了。

ajax給全域性變數賦值問題解決

如果要在 ajax 裡面給全域性變數賦值,需要改為同步操作,即加上async false,就可以了 error事件返回的第乙個引數xmlhttprequest xmlhttprequest.readystate 狀態碼的意思 0 未初始化 還沒有呼叫send 方法 1 載入 已呼叫send 方法,正...

全域性變數的問題

今天在工程裡新增了乙個專門放置全域性變數的標頭檔案,在別的很多c檔案中進行了引用,沒想到編譯的時候老是提示duplicate symbal g7task.說來自己也太差勁了,竟然忘了在c檔案中新增extern關鍵字來引用這個外部變數。而且要命的是在標頭檔案中是不能賦初值的,否則會遇到同樣的鏈結錯誤。...

使用AJAX時 設定ajax全域性變數

ajaxsetup jquery.ajaxsetup 函式用於設定ajax的全域性預設設定。該函式用於更改jquery中ajax請求的預設設定選項。之後執行的所有ajax請求,如果對應的選項引數沒有設定,將使用更改後的預設設定。該函式屬於全域性jquery物件。jquery 1.1 新增該靜態函式。...