Следующий код работает:
$("#select-id").change(function(){
var cur_value = $('#select-id option:selected').text();
. . .
});
Как отредактировать вторую строку, чтобы:
var cur_value = $(this).***option-selected***.text();
Для чего ты используешь ***option-selected***
?
javascript
jquery
B Семь
источник
источник
$("option:selected", this)
как упоминалось выше, но это было проблематично. Я использовал нажатие кнопки, чтобы добавить текст выбранного элемента опции к другому div, но когда я нажал кнопку, он фактически изменил выбранный элемент ... странно. Используйте это.На мой взгляд, лучший и самый короткий способ для событий onchange в раскрывающемся списке, чтобы получить выбранный вариант:
$('option:selected',this);
чтобы получить атрибут значения:
$('option:selected',this).attr('value');
чтобы поместить показанную часть между тегами:
$('option:selected',this).text();
В вашем образце:
$("#select-id").change(function(){ var cur_value = $('option:selected',this).text(); });
источник
.context
, он устарел, так как jQuery 1.10 - api.jquery.com/category/deprecated/deprecated-1.10var cur_value = $('option:selected',this).text();
источник
Это должно работать:
$(this).find('option:selected').text();
источник
Вы можете использовать
find
для поиска выбранной опции, которая является потомком узла (ов), на который указывает текущий объект jQuery:var cur_value = $(this).find('option:selected').text();
Поскольку это, вероятно, непосредственный ребенок, я бы предложил
.children
вместо этого использовать :var cur_value = $(this).children('option:selected').text();
источник
var cur_value = $(this).find('option:selected').text();
Поскольку
option
он может быть непосредственным дочерним элементом,select
вы также можете использовать:var cur_value = $(this).children('option:selected').text();
http://api.jquery.com/find/
источник
option-selected
без кавычек ...?find('option:selected')
возвращает для меня пустую строку. Какая версия jQuery требуется? Я работаю в 1.6.1.children('option:selected')
работает.option:selected
присутствует с версииЛучшая догадка:
var cur_value = $('#select-id').children('option:selected').text();
Мне больше нравятся дети в этом случае, потому что вы знаете, что идете только на одну ветвь вниз по дереву DOM ...
источник
Это просто
$(this).val();
Я думаю, что jQuery достаточно умен, чтобы знать, что вам нужно
источник