2011-04-15 6 views
4

Можно создать дубликат:
jQuery get select option textКак получить текст опции, передав значение опции с помощью JQuery?

У меня есть падение downlist, как, например:

<select id="systemMessageList" name="systemMessageList"> 
    <option value="-1">--- Choose One ---</option> 
    <option value="120">niempo</option> 
    <option value="119">quartero</option> 
    <option value="118">mileno</option> 
</select> 

Я хочу, что: я буду передать значение, например 119 и он будет вернуть текст quartero в JQuery?

+0

@Felix Kling, вы правы. – kamaci

ответ

4

попробовать это:

$('option[value="'+$('#systemMessageList').val()+'"]').text(); 

так, если выбран 119 он вернется: quartero

или создать какую-то функцию, которая получает текст для любого значения параметра:

function getOptionText(option){ 
    return $('option[value="'+option+'"]').text(); 
} 

getOptionText(119); // yields quartero 
+0

или изменить '$ ('# systemMessageList'). val()' на любое значение, которое вы хотите получить для текста для – zsalzbank

+0

, что тоже @codethis, плохо добавьте, что на ответ – Neal

4

Текст выбранного варианта, вам необходимо:

$('#systemMessageList option:selected').text(); 

Для значения вы можете просто использовать

$('#systemMessageList').val(); 

Edit: другие ответы, вероятно, что вы хотите. Я просто покажу вам, как получить текст и значение того, какой вариант выбран.

+0

Я согласен с вами, но из точки производительности $ ('# systemMessageList'). Find (': selected'). Text(); было бы лучше –

3
var text = $('#systemMessageList option[value="119"]').text(); 
+0

просто отсутствует одна цитата здесь! Отличный ответ, хотя! –

+0

@ Лукас Уопс, исправлено :) – alex

1

Попробуйте следующее:

function getOptionText(value){ 
    return $('#systemMessageList option[value="' + value + '"]').text(); 
} 

alert(getOptionText(119)); 
Смежные вопросы