2013-10-04 47 views
0

在我的網頁我有一個從數據庫加載的項數的2名列表。爲了減少流量,我將從數據庫加載的所有項目存儲在全局數組中,並且當用戶搜索列表時,我首先搜索數組,然後僅在未找到該項目時才轉到數據庫。的Javascript全局數組轉向未定義無故

所以剛開始我定義我的劇本,只有一次頂我的全局數組。

var _navArr=[]; 

然後,我想這個代碼

$.ajax({ //At breakpoint here the _navArr is defined and full of items 
    type: "POST", 
    url: "Webservices/ws_publikace.svc/ws_getUserNavigatorList", 
    data: data, 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (msg) { 
      //But inside success function _navArr is undefined 
      _navArr[navArr] = extedItemArr(_navArr[navArr], msg.d); 
      } 
}); 

訪問它,但在代碼中的描述這是行不通的。

任何想法,爲什麼會這樣呢?由於

+0

你確定'_navArr'實際上是可見的從'success'功能? – fiddler

+1

我會說'_navArr'被重寫或在調用'$ .ajax()'之後的某處被刪除。 – leaf

+0

'extedItemArr'做什麼? –

回答

0

相反var _navArr=[];嘗試window._navArr = [];