如何从精确文本的下拉列表中选择选项

时间:2011-12-19 09:48:17

标签: jquery jquery-selectors

我想允许用户输入一个文本框并在选择下拉列表中查找并选择它。但是我有自己的对象而不是它的名字。

当前按下输入文本框将运行以下代码

$(this).prev().find('option:contains(\'editboxValue\')').attr('selected', 'selected');

但上面的代码只选择Text2。以下代码工作正常,但看起来很乱!

$(this).prev().find("option").each(function(){ if ($(this).text() == 'editboxValue') $(this).attr("selected","selected");});

有没有更好的方法来写它?

<select>
  <option>Text</option>
  <option>Text1</option>
  <option>Text2</option>
</select>
<input type="text">

2 个答案:

答案 0 :(得分:3)

使用下拉列表项文本选择该选项,请使用此

var findText = $('#textBoxId').val();
$('#dropDownList option').
    filter(function () {return ($(this).text() == findText); })).
    attr('selected', 'selected'); 

答案 1 :(得分:0)

选择一个ID或类,并为您的选项提供与您的文本相同的ID。 如果生成选项,则易于制作。 你需要做的就是:

var myId = 'GetTheIdYouNeed'
$('.mySelect').find(myId);