выберите поле, чтобы URL (но прямо на вкладку) - PullRequest
0 голосов
/ 25 января 2011

Хорошо, у меня есть две страницы:

Страница A с вкладками Ajax Страница B с меню выбора

на странице B в выпадающем списке выбора, у меня есть:

<form name="mssgMenu">
            <div class="field2">

                        <select id="moreActions" name="moreActions" class="small" onchange="if(this.options[this.selectedIndex].value != ''){window.top.location.href=this.options[this.selectedIndex].value}">


                              <option selected="selected" value="">More Actions
                              <option value="">Inbox
                              <option value="">Sent Mail
                              <option value="">Compose new Message
                              <option value="pageA.php#tab4">bugMe

                        </select>
                    </div>
                    </form>

На странице AI есть вкладка (допустим, на вкладку 4 ссылаются как)

<li><a href="#tab4"><span class="Mssg">HelloWorld</span></a></li>

Итак, как мне получить поле выбора, ссылку на гиперссылку и открыть вкладку? Страница

Ответы [ 2 ]

0 голосов
/ 25 января 2011

Если вы используете вкладки jQueryUI, выполните следующие действия:

На странице B измените последний параметр следующим образом

<select id="moreActions" name="moreActions" class="small" onchange="if(this.options[this.selectedIndex].value != ''){window.top.location.href=this.options[this.selectedIndex].value}">
    <option selected="selected" value="">More Actions</option>
    <option value="">Inbox</option>
    <option value="">Sent Mail</option>
    <option value="">Compose new Message</option>
    <option value="pageA.php?selected=tab4">bugMe</option>
</select>

А на странице А

$(document).ready(function () {
    if (getParameterByName("selected") == "tab4") {
        $("#MyTabs").tabs({
            selected: 3
        });
    }
});

function getParameterByName( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}
0 голосов
/ 25 января 2011

Вы можете выполнить URL, а затем на другой странице использовать параметр # tab2 с JavaScript, чтобы открыть его

function activateTab()
{
var params = document.location.toString().split('#');
if(params.length > 0)
{
    //code to activate tab
}
}

...