2010-12-01 29 views
4

Le problème principal est que si l'onglet est déjà sélectionné, l'événement 'select' ne se déclenche pas si je redéfinis le même ID d'onglet. La raison pour laquelle j'ai besoin de mettre à jour le contenu situé dans l'onglet. J'ai besoin d'un moyen de «sélectionner» même si je spécifie l'identifiant de l'onglet déjà sélectionné.Comment forcer l'événement 'select' dans les Onglets jQuery si l'onglet est déjà sélectionné?

En théorie, cela devrait fonctionner quelque chose comme:

tabControl.tabs('select', -1); 
tabControl.tabs('select', selectedTab); 

mais « select » prend l'indice de base zéro, il ne réinitialise pas les onglets comme vous le souhaitez et ne soulève pas de nouveau cas.

Une solution?

+0

Peut-être avez-vous déjà une solution pour cela, sinon veuillez vérifier ma réponse ici. http://stackoverflow.com/questions/2935238/re-trigger-the-same-tab-index-event/12343648#12343648 –

Répondre

0

Si vous avez l'objet d'onglet sélectionné (selectedTab), essayez d'appeler directement l'événement avec quelque chose comme:

selectedTab.select(); 
+0

Je n'ai aucun objet tab sélectionné. Tabs plugin n'expose pas les propriétés similaires – Madman

+0

J'ai eu un problème similaire et j'ai trouvé le travail ci-dessous. $ ('# tabName'). Bind ('click', function() {}); $ ('# tabName'). Trigger ('clic'); –

1

Je ne recommanderais pas l'onglet sélection deux fois juste parce que vous avez besoin de recharger son contenu. Au lieu de cela, j'ai résolu le même problème en appelant la méthode 'load' tabs() au lieu de 'select'.

var selectedTab = tabControl.tabs('option', 'selected'); 
tabControl.tabs('load', selectedTab);