如何使用jQuery在下拉菜单中通过文本值选择项目?

如果我有以下选择,并且不知道用于像这个问题那样事先选择一个项目的值或者我想要选择的项目的索引,那么如果我确实知道这个选项,我怎么才能用jQuery选择一个选项文本值像选项C?

<select id='list'>
<option value='45'>Option A</option>
<option value='23'>Option B</option>
<option value='17'>Option C</option>
</select>

var option;
$('#list option').each(function() {
    if($(this).text() == 'Option C') {
        option = this;
        return false;
    }
});

这应该可以做到这一点:

// option text to search for
var optText = "Option B";
// find option value that corresponds
var optVal = $("#list option:contains('"+optText+"')").attr('value');
// select the option value 
$("#list").val( optVal )

正如无眼睑指出的那样,当被搜索的文本可以在多个选项中找到时,这将表现出不可预知的行为。


$("#list option").each(function() {
  this.selected = $(this).text() == "Option C";
});
链接地址: http://www.djcxy.com/p/83071.html

上一篇: How do I select an item by its text value in a dropdown using jQuery?

下一篇: jquery selection if option.value equal something, mark a selected