用jQuery获取所选选项的索引

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (37)

我有点困惑,如何从HTML <select>项目中获取所选选项的索引。

这个页面上描述了两种方法。但是,两人总是返回-1。这是我的jQuery代码:

$(document).ready(function(){
    $("#dropDownMenuKategorie").change(function(){
        alert($("#dropDownMenuKategorie option:selected").index());
        alert($("select[name='dropDownMenuKategorie'] option:selected").index());
    });
});

在HTML中

(...)
<select id="dropDownMenuKategorie">
    <option value="gastronomie">Gastronomie</option>
    <option value="finanzen">Finanzen</option>
    <option value="lebensmittel">Lebensmittel</option>
    <option value="gewerbe">Gewerbe</option>
    <option value="shopping">Shopping</option>
    <option value="bildung">Bildung</option>
</select>
(...)
提问于
用户回答回答于

第一种方法似乎在我测试过的浏览器中有效,但是选项标记并不真正对应于所有浏览器中的实际元素,因此结果可能会有所不同。

只需使用selectedIndexDOM元素的属性:

alert($("#dropDownMenuKategorie")[0].selectedIndex);

因为1.6版jQuery具有prop方法,可用于读取属性:

alert($("#dropDownMenuKategorie").prop('selectedIndex'));
用户回答回答于

用jQuery方式解决这个问题的好方法

$("#dropDownMenuKategorie option:selected").index()

扫码关注云+社区

领取腾讯云代金券