0

我在第 1 页上有一个带有查询字符串的链接href="page2.html?selected=1"

我想要的是当我单击第 1 页上的此链接时,它应该导航到第 2.html 页并使用此查询字符串值打开特定的 jquery 选项卡(使用 jquery 选项卡)?

功能如下:

$(function selectTab(indexId){
    var activeTab = location.href;
    var activeTabId = activeTab.substring(activeTab.lastIndexOf('=') + 1);
    $('#tabs').tabs('select', indexId);
})

请告诉我如何解决这个问题??

4

2 回答 2

1

你可以这样做,但你的变量是混合的,它只是:

$(function selectTab(){
    var activeTab = location.href;
    var activeTabId = activeTab.substring(activeTab.lastIndexOf('=') + 1);
    $('#tabs').tabs('select', activeTabId);
})

但是,已经有对此的内置支持,只需使用这样的 URL:

page2.html?#tabPanelID

例如,如果选项卡有一个指向 a 的链接,href="#tab3"那么<div id="tab3">您的 URL 将是page2.html#tab3,请查看此链接:http: //jqueryui.com/demos/tabs/#tabs-3

看看它是如何直接打开到演示中的第三个选项卡的?这是内置的行为。

于 2010-10-27T09:04:03.097 回答
1

试试这种方式......我知道它有点啰嗦,但至少你可以看到 JS Tabs 是如何实现的每个阶段。

页面重新加载后,向您的字符串添加一个提示...我已经完成了 tab222。

然后 ID 你的标签内容 div 我已经完成了#tab_2

将菜单标签href更改为您拥有的...

$(document).ready(function(){

  if (/tab222/.test(self.location.href)) {
    $('#p_tabs li').removeClass('active');
    $('#p_tabs li a[href="#tab_2"]').parent().addClass('active');
    $('#tab_one').removeClass('active');
    $('#tab_two').addClass('active');
  };

});

哇哇!希望有帮助。

于 2015-03-23T19:33:08.263 回答