2

我有一个看起来像这样的下拉列表。我需要使用 javascript 从当前选择中获取信息的帮助。我需要添加什么 id 和任何适当的 javascript 调用来获取当前选择的“值”

<dl id="order" class="dropdown">
  <dt><a href="#"><span>(Name of Selected Item Ends up here)</span></a></dt>
  <dd>
    <ul style="z-index: 1000; display: none; ">
      <li value="1"><a href="1">Item 1</a></li>
      <li value="2"><a href="2">Item 2</a></li>
      <li value="3"><a href="3">Item 3</a></li>
    </ul>
  </dd>
</dl>
$(document).ready(function() {
    $(".dropdown dt a").click(function() {
        $(".dropdown dd ul").toggle();
    });

    $(".dropdown dd ul li a").click(function() {
        var text = $(this).html();
        $(".dropdown dt a span").html(text);
        $(".dropdown dd ul").hide();
        if(order != getSelectedValue("order")) {
        order = getSelectedValue("order");
        }
    });

    function getSelectedValue(id) {
        return $("#" + id).find("dt a span.value").html();
    }

    $(document).bind('click', function(e) {
        var $clicked = $(e.target);
        if (! $clicked.parents().hasClass("dropdown"))
            $(".dropdown dd ul").hide();
        return false;
    });
});
4

1 回答 1

1

单击时,这将返回被单击的列表项的值:

$(this).closest('li').attr('value');

然后,您可以删除 getSelectedValue 函数。

jsFiddle 示例

于 2012-07-04T04:03:35.710 回答