Tab保持返回第一个选项卡jquery

时间:2013-02-12 02:12:55

标签: jquery asp.net cookies tabs

我有两个标签,第一个只有gridview,另一个标签有按钮。现在每当我单击第二个选项卡上的按钮时,它必须根据它的功能填充第二个选项卡上的gridview,它确实已填充,但页面返回到第一个选项卡然后我必须单击下一个选项卡在第二个选项卡中查看填充的gridview。我听说为了让它留在那个标签我必须使用cookies。但我是jquery的新手,所以我真的不知道如何做到这一点。这是我的代码。

 $(function() {
var tabs = $( "#tabs" ).tabs();
 tabs.find( ".ui-tabs-nav" ).sortable({
 axis: "x",
 stop: function() {
 tabs.tabs( "refresh" );
             }
 });
  });

以下是div:

<div id="tabs" class="tab"> 
          <ul> 
         <li><a href="#tabs-2" >Visitors For Today</a></li> 
         <li><a href="#tabs-1">Reports</a></li> 
          </ul>
    <div id = "tabs-1">
         //some codes
    </div>
    <div id = "tabs-2">
         //somecodes
    </div>



</div>

对不起,我真的不擅长这个,但这是对的吗?

 $(function() {
    var tabs = $( "#tabs" ).tabs({
    cookie: {
               name: 'my-unique-cookie',
               expires: 1,
               path: '/'
                     }
            });
        tabs.find( ".ui-tabs-nav" ).sortable({
            axis: "x",
             stop: function() {
             tabs.tabs( "refresh" );
             }
          });
     });

4 个答案:

答案 0 :(得分:1)

如您所说,您可以使用jquery cookies(http://www.electrictoolbox.com/jquery-cookies/)保存当前标签的索引,然后在重新加载页面时,设置active选项tabs()到你刚刚保存的索引(http://api.jqueryui.com/tabs/#option-active)。

答案 1 :(得分:1)

它应该像添加对cookie plugin的引用一样简单(下载它并将其添加到您的项目中,然后添加本地引用),然后修改您的{{ 1}}要求做这样的事情:

tabs()

您可能希望自定义 $("#tabs").tabs({ cookie: { name: 'my-unique-cookie', // store cookie for a day, without, it would be a session cookie expires: 1, path: '/' } }); name选项。选项参考位于https://github.com/carhartl/jquery-cookie#cookie-options - 按原样保留,Cookie将对整个网站有效,并命名为path

答案 2 :(得分:0)

利用浏览器历史记录和重新加载按钮

你可以用 http://www.asual.com/jquery/address/

观看演示

http://www.asual.com/jquery/address/samples/express/

答案 3 :(得分:0)

对于迟到的更新感到抱歉。我已经解决了这个问题而不使用cookie,因为它在asp中。这是怎么回事:

$("#tabs").tabs({

activate: function() { 

var selectedTab = $("#tabs").tabs('option', 'active');

$("#<%= hdnSelectedTab.ClientID %>").val(selectedTab);

//alert(selectedTab);

},

active: $("#<%= hdnSelectedTab.ClientID %>").val()

}); 

然后在asp:

<asp:HiddenField ID="hdnSelectedTab" runat="server" Value="0" />

希望这会有所帮助..感谢您的帮助。我无法使用cookie因为我发现很难理解抱歉我是jquery的新手

注意:我使用的是jquery-ui 1.9代码根据你的版本改变的方式