Пройдите значение QueryString, чтобы открыть соответствующую вкладку jQuery на странице naext
-
26-09-2019 - |
Вопрос
У меня есть ссылка на странице 1 с помощью QueryString href="page2.html?selected=1"
.
Что я хочу, когда я хочу, когда я нажимаю на эту ссылку на странице 1, то она должна перейти к странице 2.html и использовать это значение QueryString, чтобы открыть определенную вкладку jQuery (используя вкладки jQuery) ??
Функция выглядит следующим образом:
$(function selectTab(indexId){
var activeTab = location.href;
var activeTabId = activeTab.substring(activeTab.lastIndexOf('=') + 1);
$('#tabs').tabs('select', indexId);
})
Пожалуйста, скажите мне, как я могу решить эту проблему ??
Решение
Вы можете сделать это таким образом, но ваши переменные перепутаны, это будет просто:
$(function selectTab(){
var activeTab = location.href;
var activeTabId = activeTab.substring(activeTab.lastIndexOf('=') + 1);
$('#tabs').tabs('select', activeTabId);
})
Однако, Для этого уже есть встроенная поддержка, просто используйте подобное URL:
page2.html?#tabPanelID
Например, если вкладка имеет ссылку href="#tab3"
это идет в <div id="tab3">
Тогда ваш URL будет page2.html#tab3
, Проверьте эту ссылку: http://jqueryui.com/demos/tabs/#tabs-3.
Посмотрите, как он открывается напрямую на третью вкладку в демо? Это встроенное поведение.
Другие советы
Попробуйте так ... я знаю, что он немного давно завещал, но по крайней мере, вы можете увидеть каждый этап того, как реализован вкладки JS.
Добавьте Taxtale на вашу строку после перезагрузки страницы ... Я сделал Tab222.
Затем ID Ваша вкладка Content Div's Я сделал # Tab_2
Измените меню Tag 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');
};
});
Врала! Надеюсь, это поможет.