【问题标题】:select box, to url ( but direct to tab )选择框,到 url(但直接到选项卡)
【发布时间】:2011-01-25 00:56:20
【问题描述】:

好的,我有两页:

带有 ajax 选项卡的页面 A 带有选择菜单的页面 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>

在页面 A 我有标签(假设标签 4 被引用为)

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

那么我如何获得选择框,链接到超链接并打开标签页?页面

【问题讨论】:

    标签: javascript forms element


    【解决方案1】:

    你可以执行url,然后在另一个页面上使用参数#tab2和javascript来打开它

    函数激活标签() { var params = document.location.toString().split('#'); 如果(参数长度 > 0) { //激活标签的代码 } }

    【讨论】:

    • params[1] 将是您的选项卡的名称
    • hmm,选项卡目前在页面 A 上工作,但是我想通过页面 B 上的链接打开页面 A 上的选项卡
    • 例如 pageA.html 将链接到 pageB.html#tab1 和上面的代码放在 pageB onload 并附加激活代码例如如果你使用 jQuery 你可以这样做 $('#'+参数[1]).css('display','');或类似 document.getElementById(param[1]).style.display = '';
    • 只是反向,从 pageB.html 到 pageA.html#tab1
    • 听起来不错,但你能不能做个小提琴,我没完全理解
    【解决方案2】:

    如果您使用的是 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>
    

    在页面 A

    $(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, " "));
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-07
      • 2022-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多