Как выбрать элемент по его текстовому значению в раскрывающемся списке с помощью jQuery? - PullRequest
14 голосов
/ 28 октября 2008

Если у меня был следующий выбор, и я не знал, какое значение использовать для предварительного выбора элемента, как в этом вопросе или индексе элемента, который я хотел выбрать, как я мог выбрать один из параметры с JQuery, если я знал текстовое значение, как вариант C?

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

Ответы [ 4 ]

14 голосов
/ 28 октября 2008

Это должно сработать:

// 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 )

Как указывает на отсутствие век, это будет вести себя непредсказуемо, если искомый текст можно найти в нескольких вариантах.

14 голосов
/ 28 октября 2008
var option;
$('#list option').each(function() {
    if($(this).text() == 'Option C') {
        option = this;
        return false;
    }
});
9 голосов
/ 11 января 2011
$("#list option").each(function() {
  this.selected = $(this).text() == "Option C";
});
4 голосов
/ 02 сентября 2009
function SelectItemInDropDownList(itemToFind){    
         var option;
         $('#list option').each(function(){
             if($(this).text() == itemToFind) {
                 option = this;
                 option.selected = true;
                 return false;    
                }
           });  }

Я только изменил предыдущий код, потому что он только нашел опцию в списке выбора, некоторые могут захотеть буквальную демонстрацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...