【问题标题】:Get the selected option id with jQuery使用 jQuery 获取选定的选项 id
【发布时间】:2011-02-22 17:24:42
【问题描述】:

我正在尝试使用 jQuery 根据所选选项发出 ajax 请求。

有没有一种简单的方法可以使用 jQuery 检索选定的选项 id(例如“id2”)?

<select id="my_select">
   <option value="o1" id="id1">Option1</option>
   <option value="o2" id="id2">Option2</option>
</select>


$("#my_select").change(function() {
    //do something with the id of the selected option
});

【问题讨论】:

    标签: jquery dom jquery-selectors


    【解决方案1】:

    最简单的方法是 var id = $(this).val();从像 on change 这样的事件内部。

    【讨论】:

    • 这将返回所选选项的值,而不是 ID(这是 OP 请求的)。
    【解决方案2】:
    $('#my_select option:selected').attr('id');
    

    【讨论】:

      【解决方案3】:

      var id = $(this).find('option:selected').attr('id');

      然后你可以用selectedIndex做任何你想做的事情

      我已经重新编辑了我的答案......因为 selectedIndex 不是一个很好的变量来举例......

      【讨论】:

      • 2 cmets,他已经在事件处理程序中拥有带有 this 的 DOM 元素,无需再次执行查找......并且可能想要选择另一个变量名称,selectedIndex 会这里特别不准确:)
      • 是的......对不起......我很着急......并且selectedIndex变量在手......当然他不需要再次通过......我会重做
      • 我个人选择了这个选项,因为它不需要 .change 函数
      【解决方案4】:

      您可以使用:selected selector 获取它,如下所示:

      $("#my_select").change(function() {
        var id = $(this).children(":selected").attr("id");
      });
      

      【讨论】:

      • 如何在纯 javascript 中应用您的解决方案?
      猜你喜欢
      • 2012-09-19
      • 1970-01-01
      • 2010-11-26
      • 2011-11-17
      • 1970-01-01
      • 2015-06-29
      • 2016-03-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多