2014-11-19 5 views
-1

Есть ли способ выбрать самое последнее выбранное пользователем выпадающее меню?Выберите последнее выбранное значение выпадающего списка

Например:

<select id="data" name="data" class="data" multiple="multiple"> 
    <option value="100">foo</option> 
    <option value="101">bar</option> 
    <option value="102">bat</option> 
    <option value="103">baz</option> 
</select> 

Если я использую что-то вроде сильфона, например, что я получаю последний индекс, но это не то, что я хочу.

var latest_value = $("option:selected:last",this).val(); 

То, что я хочу что-то вроде: если вы выбираете «бар», я получаю 101, если вы выбираете «Foo» Я получаю 101 вместо 100.

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

+0

Не просто ли получить html или текст выбранного варианта при изменении, что бы вы хотели? – j08691

+0

Я попробовал следующее: $ ('# data'). Change (function() {$ (this) .val()}), и я получаю весь массив выбранных значений. EDIT: изменил мой пример, потому что я хочу значение, а не текст. –

+0

Как вы получаете стоимость? Под этим я подразумеваю, какое событие вы используете? Кроме того, поскольку у вас есть множество атрибутов, как вы хотели бы справиться с этим? И код, который вы опубликовали, получает последнее нажатие на значение: http://jsfiddle.net/j08691/1yfp1sv1/ – j08691

ответ

2

Используйте этот простой JS код:

var is_now_selected = document.getElementById('data').value; 

// or with jQuery 

var is_now_selected = $('#data').val() 

Может быть, вы не знаете, что option -value accually это значение select. Если вы нажмете <option value="something">, который находится внутри <select name="select_me">, тогда этот выбор будет иметь значение выбранного option - в данном случае - "select_me".

+0

Извините, но это не то, что я хочу. Я редактировал мой вопрос, может быть, вы можете лучше понять мою проблему. –

0

Вы можете написать этот код. Это может вам помочь.

Пожалуйста, дайте мне знать, если у вас есть проблемы.

$("#data").change(function() { 
    alert($("#data").val()); 
}); 
Смежные вопросы