在第一个jQuery选项卡(初始化)后面调用url

问题描述:

我的页面上有一个jquery选项卡,其中每个列表项都包含一个应该在有人更改选项卡时调用的超链接(这是一个在选项卡内填充值的web服务调用)。在第一个jQuery选项卡(初始化)后面调用url

更换标签时,我可以做到这一点的行为,但现在我也希望在.tabs函数被调用(用于初始化目的)

我怎样才能做到这一点被称为第一个超链接?调用此页面的最后不起作用:

setTimeout(function() {$('#tabs').tabs('select', 0);}, 0); 

可能是因为只调用.tabs()已选择第一个选项卡。

我的标签代码(JS + asp.net):

<div id="tabs" class="tab-panel"> 
    <ul class="tabs"> 
     <asp:Repeater ID="rpt" runat="server">     
      <ItemTemplate> 
       <li> 
        <asp:HyperLink ID="btnEdit" runat="server" NavigateUrl="myPage.aspx/GetInfo" Text='<%# Eval("Name") %>'></asp:HyperLink> 
        <asp:HiddenField ID="txtId" runat="server" Value='<%# Eval("ID") %>' /> 
       </li> 
      </ItemTemplate> 
     </asp:Repeater> 
    </ul> 
    <div class="tab rounded-bottom rounded-topright"> 
     <div class="tab-content" id="licRights"> 
      <input type="text" value="" id="myText"> 
     </div> 
    </div> 
</div> 

的Javascript:

$("#tabs").tabs({ 
    select: function (event, ui) { 
     var Id = $(ui.tab).siblings("input").val(); 
     var settings = $(this).tabs("option", "ajaxOptions"); 
     settings.data = $.toJSON({ id: Id }); 
    }, 
    ajaxOptions: { 
     success: function (response) { 
      $("#myText").val(response.d);       
     } 
    } 
}); 
+0

$( “#标签UL李:GT(0)一”)。点击(); ? – Ohgodwhy 2012-02-28 10:23:08

+0

@Ohgodwhy为什么这会在列表中的每个li-a上点击一下? – Tominator 2012-02-28 10:28:44

当点击一个标签,而不是编程方式更改的select事件triggerred。这就是documentation实际上所说的。

选择
点击标签时,触发此事件。

您可以在行动here看到这一点:

    :只有“秀”事件最初


    你可以做的是触发点击第一个选项卡上triggerred

  1. 将默认选项设置为“-1”,所以最初没有选项卡被选中(否则编程点击不起作用)
  2. 找到第一个锚,并触发click事件

下面的代码:

$("#tabs").tabs({ 
    selected: -1, 
    ... 
}).find('.ui-tabs-nav a:first').click() 

DEMO

+0

没有什么区别,没有任何反应: - /也许有一个检查“如果当前选择==目标选择,什么也不做” – Tominator 2012-02-28 10:23:34

+0

我确实已经改变了anwser。该插件不会重新选择已选择的选项卡(有意义)。 – 2012-02-28 10:27:46

+0

谢谢!也许我应该阅读“选择”的文档,而不仅仅是“如何做”部分... – Tominator 2012-02-28 10:41:37