2010-10-29 9 views

Répondre

10

S'il vous plaît essayer avec Index

function getIndex(){ 
    return $("ul li.ui-state-active").index(); 
    } 

Il sera retourne l'index de li ou onglet sélectionné .

+0

fonctionne comme un charme! – indago

1

Pas trop sûr de cela, mais je pense que jQuery assigne dynamiquement une classe de « ui-state-actif »

+0

Corriger, jQuery ajoute la classe 'ui-state-active' à l'onglet actif. Voir http://jqueryui.com/demos/tabs/ avec Firebug pour voir comment cela fonctionne. – Scott

+0

j'ai besoin de le vérifier par programme, donc je peux faire des actions liées à cela – Bart

+0

var selected = $ tabs.tabs ('option', 'selected'); // => 0 – Bart

0
var index = $("#tabs").tabs('option', 'selected'); 
+1

L'option sélectionnée est retardée d'un clic si vous accédez à la valeur de l'événement activate. –

2

J'ai eu besoin de l'onglet actif pendant l'événement activate. J'ai été capable de le faire en utilisant l'option appel actif.

$('#tabs').tabs({ 
    activate: function (event, ui) { 
     var activeTabId = $(this).tabs('option', 'active'); 
    } 
}); 
+0

bonne réponse vraiment appréciée. – User

0

J'utilise quelque chose comme ceci:

$tabContainer.tabs({ 
    activate: function (event, ui) { 
     if (ui.newPanel.is("#TabId")) { 
      // do sth here 
     } 
    } 
}); 
0
var selectedTabIndex = 0; 
jQuery("#tabContainer").tabs({ 
select: function(event, ui) { 
    selectedTabIndex = ui.index; 
} 
}); 

Vous pouvez utiliser selectedTabIndex dans votre application