ExtJS Array проблема - PullRequest
       5

ExtJS Array проблема

1 голос
/ 04 января 2012

Итак, у меня есть эта группа флажков 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

Если я попытаюсь получить длину массива Ext.getCmp('depCheckGroup').items до или после этого, он покажет «11», что является правильным числом, поэтому я знаю, что массив не пустой. Все данные JSON загружаются правильно из хранилища данных (опять же, на самом деле это работает для первой выбранной строки). Возможно, мне здесь не хватает чего-то совершенно очевидного, но я действительно не вижу этого.

1 Ответ

2 голосов
/ 04 января 2012

items - это экземпляр Ext.util.MixedCollection.

Вместо этого используйте:

Ext.getCmp('depCheckGroup').each(function(comp){
    console.log(comp);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...