Хорошо, скажи, что у меня есть это:
<select id='list'>
<option value='1'>Option A</option>
<option value='2'>Option B</option>
<option value='3'>Option C</option>
</select>
Как бы выглядел селектор, если бы я хотел получить «Вариант B», когда у меня есть значение «2»?
Обратите внимание, что здесь спрашивается не о том, как получить выбранное текстовое значение, а о любом из них, независимо от того, выбрано оно или нет, в зависимости от атрибута значения. Я старался:
$("#list[value='2']").text();
Но это не работает.
javascript
jquery
drop-down-menu
jquery-selectors
Паоло Бергантино
источник
источник
$("#list option").filter(function () { return $(this).html() == "stuff"; }).val();
Ответы:
Он ищет элемент с идентификатором,
list
который имеет свойство,value
равное2
.То, что вы хотите, это
option
дитяlist
:источник
$('#list option:selected').text()
$('#list').val()
.trim()
после,.text()
так как некоторые браузеры могут иногда добавлять некоторые пробелы до и после текста, которые невидимы для пользователя, но могут привести к получению неправильных значений$("#list option[value='2']").text().trim()
Если вы хотите получить опцию со значением 2, используйте
Если вы хотите получить любую выбранную опцию, используйте
источник
Это отлично сработало для меня, я искал способ отправить два разных значения с опциями, сгенерированными MySQL, и следующее является универсальным и динамическим:
$(this).find("option:selected").text();
Как уже упоминалось в одном из комментариев. Благодаря этому я смог создать динамическую функцию, которая будет работать со всеми моими полями выбора, для которых я хочу получить оба значения, значение параметра и текст.
Несколько дней назад я заметил, что при обновлении jQuery с 1.6 до 1.9 сайта я использовал этот код, это перестало работать ... вероятно, был конфликт с другим фрагментом кода ... в любом случае, решение было удалить опцию из найти () вызов:
Это было мое решение ... используйте его, только если у вас возникли проблемы после обновления вашего jQuery.
источник
Основываясь на оригинальном HTML, опубликованном Паоло, я пришел к следующему.
Он был протестирован для работы в Internet Explorer и Firefox.
источник
для нескольких выбранных значений в
#list
элементе.источник
Если на странице есть только один тег select, вы можете указать select внутри id 'list'
Чтобы получить выделенный текст
источник
Попробуйте следующее:
Причина, по которой ваш оригинальный фрагмент не работал, заключается в том, что ваши
OPTION
теги являются дочерними для вашегоSELECT
тега, который имеетid
list
.источник
Это старый Вопрос, который не обновлялся в течение некоторого времени. Правильный способ сделать это сейчас будет использовать
Надеюсь, это поможет :-)
источник
Я хотел получить выбранный ярлык. Это сработало для меня в jQuery 1.5.1.
источник
источник
optgroup
тег как дочерний элемент,select
и выбранная опция находится в этомoptgroup
. использование,$("#list option:selected").text();
которое работает даже в этом случаеоставить пробел после идентификатора.
источник
Вы можете получить выбранный вариант текста с помощью функции
.text();
Вы можете вызвать функцию следующим образом:
источник
При "циклическом" просмотре динамически созданных элементов выбора с помощью .each (function () ...):
$("option:selected").text();
и$(this + " option:selected").text()
не возвращался выбранный текст опции - вместо этого он был нулевым.Но решение Питера Мортенсена сработало:
Я не знаю, почему обычным способом не удается в
.each()
(вероятно, моя собственная ошибка), но спасибо, Питер. Я знаю, что это был не оригинальный вопрос, но я упоминаю его «для новичков, приезжающих через Google».Я бы начал с
$('#list option:selected").each()
того, что кроме того, что мне нужно было извлечь что-то из элемента select.источник
Использование:
источник
Я искал val по внутреннему имени поля вместо ID и пришел от Google к этому сообщению, которое помогло, но не нашло нужного мне решения, но я нашел решение, и вот оно:
Так что это может помочь кому-то искать выбранное значение с внутренним именем поля вместо использования длинного идентификатора для списков SharePoint:
источник
Мне нужен был этот ответ, так как я имел дело с динамически приводимым объектом, и другие методы здесь, похоже, не работали:
Это, конечно, использует объект DOM вместо анализа его HTML с помощью nodeValue, childNodes и т. Д.
источник
Совет: вы можете использовать приведенный ниже код, если ваше значение является динамическим:
Или (лучший стиль)
Как уже упоминалось в jQuery, получите конкретный текст тега опции и поместите динамическую переменную в значение
источник
В качестве альтернативного решения вы также можете использовать контекстную часть селектора jQuery, чтобы найти
<option>
элементыvalue="2"
внутри выпадающего списка:источник
Я хотел динамическую версию для выбора нескольких, которая будет отображать то, что выбрано справа (жаль, что я читал и видел
$(this).find
... раньше):источник
Вы можете получить один из следующих способов
источник