Если в init выбрана вкладка по умолчанию, то обработчик событий tabselect не запускается

#jquery #jquery-ui-tabs

#jquery #jquery-ui-tabs

Вопрос:

Я работаю с вкладками пользовательского интерфейса jquery и пытаюсь установить «выбранной» вкладке значение 0 при инициализации, но это не запускает событие tabselect. Если я установлю для ‘выбранной’ вкладки значение 1 или любой другой вкладки, событие tabselect сработает. Я думал, что, поскольку вкладка с индексом 0 является настройкой по умолчанию, вкладка «выбранная» по умолчанию не запускает событие tabselect, потому что оно уже выбрано. Прав ли я, думая об этом? И есть ли способ заставить это работать в контексте утилиты ui-tabs?

 divRelationships.tabs({
    select: function (e, ui) {
        createRelationshipListBoxForWebObject(divRelationships, webObjectGuid, ui);
    }
});
divRelationships.tabs("select", 0);
  

Ответ №1:

Вы могли бы использовать события show или create в зависимости от ваших потребностей ( show кажется, ближе к тому, что вы хотите). show будет вызываться всякий раз, когда отображается «Tab 0» (в том числе при инициализации виджета tabs).

Имея это в виду, вам не пришлось бы вручную запускать select событие. Следующего должно быть достаточно:

 divRelationships.tabs({
    show: function (e, ui) {
        createRelationshipListBoxForWebObject(divRelationships, webObjectGuid, ui);
    }
});

// Show will automatically be called when the tabs widget is created.