2012-01-03 63 views
1

所以我有這個ExtJS複選框組,我需要循環檢查他們的名字與我從數據存儲獲得的數據,每次用戶從網格中選擇一個產品。ExtJS陣列問題

這是代碼:

Ext.each(Ext.getCmp('depCheckGroup').items,function(deptm,index) { 
     lookfor = deptm.id; 

     if(dsDepartments.find("dept_id",lookfor) != -1) { 
      deptm.checked = true; 
     } 
    }); 

所以,再一次,每次用戶選擇行這應該解僱。 問題是隻有第一次點擊才起作用(無論哪一行,它都起作用)。

其他人拋出一個錯誤:

deptm is undefined 

如果我嘗試之前或之後這顯示「11」,這是正確的號碼,以獲得Ext.getCmp('depCheckGroup').items數組的長度,所以我知道數組ISN」 t空了。 所有JSON數據都從數據存儲正確加載(同樣,它實際上適用於選定的第一行)。 大概我在這裏錯過了一些很明顯的東西,但我真的看不到它。

+0

我們需要更多的代碼,你用這個地方,在什麼元素等監聽器.. – peter 2012-01-03 22:05:00

回答

2

items是一個Ext.util.MixedCollection實例。

相反,使用:

Ext.getCmp('depCheckGroup').each(function(comp){ 
    console.log(comp); 
});