按值(客户端)获取下拉/组合框的索引?

时间:2015-11-14 18:49:08

标签: javascript html

我认为这很简单,但有没有办法在下拉/组合框中获取值的索引而不循环遍历项目?

3 个答案:

答案 0 :(得分:1)

我猜你在谈论select标签,你试图通过它的值来获得一个选项的索引。如果是这样,您需要做的是:

// Get the select
var select = document.getElementById('mySelect');

// Get the option
var option = select.querySelector('option[value="myValue"]');

// Get the index of that option
var index = Array.prototype.indexOf.call( select.children, option );

答案 1 :(得分:1)

你不需要jQuery。你可以用现代的Javascript本地完成它。

var myOption = document.querySelector('option[value="audi"]');
console.log(myOption.index); //returns index = 3

此处示例: http://jsfiddle.net/08qzLgbh/

基于此HTML:

<select>
  <option value="volvo">Volvo</option> <!-- index 0 -->
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option> <!-- index 3 -->
</select> 

答案 2 :(得分:0)

答案涉及jQuery和选择器,无论如何可能都不是那么有效,但它可能是你想要的:

var o = $('option[value="something"]','#mycombo');

足够简单(: