extjs показывает проверку при переключении вкладок - PullRequest
0 голосов
/ 20 июля 2010

HI, Я надеюсь, что кто-то может помочь мне с фреймворком extjs.

Проблема, с которой я столкнулся, заключается в том, что проверка поля не отображается для вкладок, которые не отображаются при инициализации с панели.

Работает только при нажатии на текстовые поля.

Что мне нужно, так это что-то, чтобы принудительно вызвать сигнал подтверждения для полей при активации вкладок.

EDIT Я придумал это

Ext.getCmp('aanMakenGebruikerTabPanel').on('tabchange',function(){
        AanMakenGebruikerWindow.syncShadow();
        Ext.getCmp('Mobiel1Veld').on('render',function(v){v.validate();});
        Ext.getCmp('Email1Veld').on('render',function(v){v.validate();});
        //console.log("[aanMakenGebruikerTabPanel] resize -- sync");
    });

EDIT Я решил это, используя функцию каскадирования, так что он также достигает пунктов в поле.

Ext.getCmp('aanMakenGebruikerTabPanel').on('tabchange',function(tabPanel,tab){
        AanMakenGebruikerWindow.syncShadow();
        tab.cascade(function(item) {
   if (item.isFormField) {
    item.validate();
  }
} );
    });

спасибо, Ричард

Ответы [ 2 ]

2 голосов
/ 26 июля 2011

Параметр deferredRender по умолчанию равен true.Будет ли установка его на ложную помощь?

{
   xtype: 'tabpanel',
   deferredRender: false, 
   items: []
}
1 голос
/ 21 июля 2010

В вашем объекте конфигурации панели вкладок добавьте прослушиватели для события beforetabchange/tabchange.В обработчике вы должны перебирать поля, содержащиеся в активированной вкладке, и запускать проверку каждого поля.Надеюсь, это поможет.

...