使用jQuery在SELECT元素中查找OPTION元素

时间:2010-10-25 15:20:14

标签: jquery

使用jQuery,确定SELECT元素中是否存在具有特定值或文本值的OPTION元素的最佳方法是什么?我已经看过各种关于如何找到所选项目的提示,博客和方法,但我希望按值或按文本值查找任何项目,无论是否选中它。

e.g。鉴于下面的标记,使用jQuery,如何确定新订单是否在列表中?

<select id="music-groups">
  <option value="001">Depeche Mode</option>
  <option value="002">New Order</option>
  <option value="021">AC-DC</option>
  <option value="023">The Who</option>
  <option value="090">The Beatles</option>
  <option value="090">Bjork</option>
</select>

3 个答案:

答案 0 :(得分:5)

$('#music-groups option[text="New Order"]').length != 0

答案 1 :(得分:1)

试试这个......检查长度是否大于1

$("#music-groups:contains('New Order')").length

答案 2 :(得分:0)

var findOption = function(selector, value, text) {
   $(selector).each(function(){ 
       if(this.val() == value || this.text() == text) return this;
   });
}
findOption("#music-groups option", "001", "Depeche Mode");

这将匹配具有正确值和文本的第一个选项