Определение вкладки, выбранной в jQueryUI - PullRequest
2 голосов
/ 26 июня 2011

Я пытаюсь определить, когда нажата новая вкладка в моем компоненте вкладки jQueryui. Я следил за несколькими руководствами и блогами, но не могу обернуть голову вокруг процесса. У меня есть следующее:

$('#tabs').tabs({
  select: function(event,ui) {
  alert('selected');
  return false;
  },                
}); 

Я не знаю, что мне не хватает, но предупреждение никогда не срабатывает. Я не силен в jQuery, поэтому я, вероятно, совершаю глупую ошибку, поэтому любая помощь будет оценена.

Спасибо, Kris

Обновление: пример jsfiddle http://jsfiddle.net/T7czp/16/

Ответы [ 5 ]

5 голосов
/ 25 февраля 2014

Использование последней версии

$('#tabs').tabs({
  activate: function(event,ui) {
    alert('selected: '+ui.index);
  }
});
4 голосов
/ 26 июня 2011

Вы получаете какие-либо ошибки?Трейлинг , после того, как ваш select сломает скрипт в некоторых браузерах.

Это работает, как видно из этой скрипки: http://jsfiddle.net/T7czp/15/

$('#tabs').tabs({
  select: function(event,ui) {
     alert('selected: '+ui.index);
  }
});
3 голосов
/ 07 марта 2014

Пользовательский интерфейс jquery, похоже, немного изменился с момента последнего принятого ответа.

Параметр пользовательского интерфейса, определенный в функции активации, теперь является объектом, похожим на этот:

Объект {oldTab = {...}, oldPanel = {...}, newTab = {...}, еще ...}

Метод индекса находится внутри каждого из них. Таким образом, обновленный метод доступа:

$('#tabs').tabs({
  activate: function(event,ui) {
    alert('selected: '+ui.newTab.index());
  }
});
3 голосов
/ 26 июня 2011

Вам необходимо привязать событие к вкладке.

$("#tabs").bind("tabsselect", function(e, tab) {
  alert("The tab at index " + tab.index + " was selected");
});
1 голос
/ 14 августа 2011

@ Кристофер

Ваш код правильный.

Единственное, что вы должны удалить для выбора вкладки, это строка:

return false;

, потому что согласно документации Tabs :

Обратите внимание, что если обработчик для события tabsselect возвращает false, выбранная вкладка не будет выбрана (полезно, например, если переход на следующую вкладку требует проверки формы).

(событие tabselect соответствует обработчику select)

...