ExtJs ComboBox реинициализация - PullRequest
0 голосов
/ 27 ноября 2011

Я пытаюсь изменить конфигурацию ComboBox путем повторной инициализации:

Ext.onReady(function(){

   var mycb = new Ext.form.ComboBox({
       //params
   });

   //here is other component initizing
   var other = ....
      onChange: function() {
        //here I'm trying to reinitialize ComboBox
        mycb = new Ext.form.ComboBox({
           // other params
        });
   }
});

Но после события onChange мой ComboBox исчез.Я пытался вызвать методы mycb.destroy (), но результат тот же.

Должен ли я отменить регистрацию или что-то подобное ComboBox?Почему мой компонент исчезает?

Ответы [ 3 ]

1 голос
/ 27 ноября 2011

используйте ниже код ..

mycb.reset();
mycb.removeAll();
// for loading new data
mycb.loadData("new data store");
// to load attributes
mycb.load({params:{start:0, limit:25, reset:true}}); 

это работает в моем коде. Пожалуйста, измените согласно вашей потребности.

0 голосов
/ 28 ноября 2011

Оберните это комбо в панель с нужным макетом.В обработчике onChange удалите комбо с этой панели, уничтожьте его (комбо) и добавьте новое комбо на панель.Наличие дополнительной панели позволит вам легко разместить ее в нужном месте макета.

0 голосов
/ 27 ноября 2011

Вероятно, лучшей идеей было бы удалить оригинальный комбинированный список из его контейнера и добавить новый вместо него. Также, возможно, все, что вам нужно, это перезагрузить магазин новыми данными?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...