【问题标题】:dropdown is not working in jQuery下拉菜单在 jQuery 中不起作用
【发布时间】:2013-05-20 13:09:57
【问题描述】:

我想将选定的值重定向到相应的 URL。 但是当我选择任何值时,它会重定向到特定的 URL,但对于任何选定的值都会显示与“我的帐户”相同的文本。

如何在选择时动态设置文本?

html

<li style="margin:-3px 0 0 0;">
      <select id="myacc">
          <option value="1" id="myacc_link" ><a href="/Myaccount.asp">My account</a> </option>
          <option value="2" id="sign_btn" ><a href="/login.asp">Sign IN</a></option>
          <option value="3" id="out_btn" ><a href="/login.asp">Sign Out</a></option>
          <option value="4" id="o_btn" ><a href="/Myaccount.asp">Orders</a></option>
      </select>
</li>

jQuery

$(function () {
    // bind change event to select
    $('#myacc').bind('change', function () {

        var op_val = $("#myacc option:selected").text();

        if (url == 1) { // require a URL
            window.location = 'http://xcome.sewuk.servertrust.com/Myaccount.asp'; // redirect

            var nval = "My account"
            $("#myacc option:selected").text(nval);



        } else if (url == 2) {
            window.location = 'http://xcome.sewuk.servertrust.com/login.asp';
            var nval = "Sign In"
            $("#myacc option:selected").text(nval);
            /* $("#sign_btn").text("Sign In"); */
        } else if (url == 3) {
            window.location = 'http://xcome.sewuk.servertrust.com/login.asp';


            $("#out_btn").text("Sign Out");

        } else if (url == 4) {
            window.location = 'http://xcome.sewuk.servertrust.com/ShoppingCart.asp';
            var url1 = $(this).text();

            $("#o_btn").text("Orders");

        }

        return false;
    });

上面是我正在尝试实现的代码,但它不起作用。

【问题讨论】:

  • 当重定向到新页面或重新加载当前页面时,所有花哨的东西都丢失了,javascript 从头开始​​。要跨多个页面跟踪内容,您需要持久存储,例如 cookie 或本地存储。
  • 1.将绑定更改为 on 和 2. 使用 switch 而不是多个 if-s。
  • 定义:not working
  • 你在哪里定义url?此外,window.location = ... 之后的任何代码都可能不会做任何事情,因为页面上下文已卸载并加载了新的上下文。更重要的是,您实际上想要在这里完成什么?你为什么试图将options 的文本设置为他们已经拥有的文本?当您似乎确实想要其中的 a 元素中的 URL 时,为什么要为 options 使用整数值?为什么你的options 中甚至还有a 元素?这似乎不是有效的 HTML。

标签: javascript jquery


【解决方案1】:

尝试通过$("option:selected").val()获取选中的值

【讨论】:

    猜你喜欢
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    • 1970-01-01
    • 1970-01-01
    • 2015-12-26
    相关资源
    最近更新 更多