With jQuery UI tabs, how can I run code after a click on a tab?

ben picture ben · Nov 14, 2010 · Viewed 22.6k times · Source

With jQuery UI tabs, you can use the select method to run code when a tab is clicked:

$( ".selector" ).tabs({
   select: function(event, ui) { ... }
});

But the code is run before the just clicked tab has been loaded. I need to run code after new tab has been loaded. How can I do this? Thanks for reading.

Answer

Darren picture Darren · Dec 22, 2011

API HAS CHANGED. This event is now "activate"/"tasbactivate"; see http://api.jqueryui.com/tabs/#event-activate

----- OLD Answer below -----------

Based on the question it's the tabsshow (not the tabsload) event that is desired...event is triggered when a tab is shown.

Code examples: ( from http://jqueryui.com/demos/tabs/ )

Supply a callback function to handle the show event as an init option.

$( ".selector" ).tabs({
   show: function(event, ui) { ... }
});

Bind to the show event by type: tabsshow.

$( ".selector" ).bind( "tabsshow", function(event, ui) {
  ...
});

The event is useful if you want to set focus on control or similar.