重新触发相同的选项卡索引事件

我正在使用Jquery UI选项卡,触发show事件我使用以下语句$ tabs.tabs(’select’,1); 执行此代码后,选项卡设置为#tabs-1但是当#tabs-1已经显示时,我无法在同一选项卡上重新触发相同的事件。 所以如何重新触发相同的tab事件。

我猜你是通过ajax加载标签内容。 如果是这样,您可以使用load方法重新加载或加载任何选项卡。

$tabs.tabs('load',1); 

也许你已经想出了这个或者从其他post中得到解决方案。 我发布了一个适合我的答案。

在jquery-ui-1.8.21.js中

 if (( $li.hasClass( "ui-tabs-selected" ) && !o.collapsible) || $li.hasClass( "ui-state-disabled" ) || $li.hasClass( "ui-state-processing" ) || self.panels.filter( ":animated" ).length || self._trigger( "select", null, self._ui( this, $show[ 0 ] ) ) === false ) { this.blur(); return false; } 

选择选项卡时,前两个条件

 ( $li.hasClass( "ui-tabs-selected" ) && !o.collapsible) 

保持为true如果省略它们,再次单击选定的选项卡则不会返回false,从而再次在选定的选项卡上调用select。

PS – 我还没有看到任何不利因素,所以你可能会做一些额外的检查,看它不会破坏任何东西。