jquery-traversing:选择 - >选项 - >文本

kak*_*gue 6 jquery select text traversal option

我想比较一个变量与选择 - >选项 - >文本选择以更改"选定"attrib,这是我的代码,它的工作原理,但我认为不是写它的最好方法,原谅我的英语,我用google翻译求助hehehehe:

var lista = 'example 1'; 
$("#id option").each(function(){
  if($(this).text() == lista){
    $(this).attr('selected','selected');
  }
});
Run Code Online (Sandbox Code Playgroud)

这是html:

<select id="id" >
  <option value="0" >example 1</option>
  <option value="1" >example 2</option>
</select>
Run Code Online (Sandbox Code Playgroud)

这是一些尝试

$('#id option:eq("'+lista+'")').attr('selected','selected')

$("#id option[text='"+lista+"']").attr('selected','selected')
Run Code Online (Sandbox Code Playgroud)

Vic*_*tor 7

您可以尝试以下方法,而不是遍历每个:

var lista = 'example 1'; 
$('#id option:contains(' + lista + ')').attr('selected', true);
Run Code Online (Sandbox Code Playgroud)

要么

$('#id option:[text="' + lista + '"]').attr('selected', true);
Run Code Online (Sandbox Code Playgroud)

也适用.这取决于你的变量lista是完全匹配还是只需要部分匹配.