JQuery для извлечения и установки выбранного значения параметра элемента html select
Я пытаюсь получить и установить выбранное значение элемента выбора (раскрывающийся список) с помощью jQuery.
для получения я попытался $("#myId").find(':selected').val()
, а также $("#myId").val()
но оба возвращают неопределенное значение.
Любое понимание этой проблемы будет высоко ценится.
Ответы
Ответ 1
То, как у вас это есть, является правильным на данный момент. Либо идентификатор выбора - это не то, что вы говорите, либо у вас есть некоторые проблемы в dom.
Проверьте идентификатор элемента, а также проверьте, что ваша разметка проверяется на здесь в W3c.
Без действительного dom jQuery не может корректно работать с селекторами.
Если идентификатор верен, и ваш дом проверяет, применяется следующее:
Чтение Выберите значение параметра
$('#selectId').val();
Установить значение параметра выбора
$('#selectId').val('newValue');
Чтение выбранного текста
$('#selectId>option:selected').text();
Ответ 2
чтобы получить/установить фактическое свойство selectedIndex элемента select:
$("#select-id").prop("selectedIndex");
$("#select-id").prop("selectedIndex",1);
Ответ 3
$('#myId').val()
должен сделать это, в противном случае я попытаюсь:
$('#myId option:selected').val()
Ответ 4
При настройке с помощью JQM
не забудьте обновить UI
:
$('#selectId').val('newValue').selectmenu('refresh', true);
Ответ 5
$("#myId").val()
должен работать, если myid
- это идентификатор элемента выбора!
Это установит выбранный элемент: $("#myId").val('VALUE');
Ответ 6
Предположим, что вы создали раскрывающийся список, используя тег SELECT, как показано ниже,
<select id="Country">
Теперь, если вы хотите увидеть, какое значение выбрано из раскрывающегося списка с помощью JQuery, просто поместите следующую строку для получения этого значения.
var result= $("#Country option:selected").text();
он будет работать нормально.
Ответ 7
Я знаю, что это старо, но у меня просто был медведь с Razor, я не мог заставить его работать независимо от того, насколько сильно я пытался. Помните, что возвращался как "undefined", независимо от того, использовал ли я атрибут "text" или "html". Наконец, я добавил атрибут "значение-значение" в этот параметр, и он отлично читал.
<option value="1" data-value="MyText">MyText</option>
var DisplayText = $(this).find("option:selected").attr("data-value");
Ответ 8
$( "#myId option: selected" ).text(); предоставит вам текст, который вы выбрали в раскрывающемся элементе. в любом случае вы можете изменить его на .val(); чтобы получить его значение. проверьте следующее кодирование
<select id="myId">
<option value="1">Mr</option>
<option value="2">Mrs</option>
<option value="3">Ms</option>`
<option value="4">Dr</option>
<option value="5">Prof</option>
</select>
Ответ 9
Попробуй это
$('#your_select_element_id').val('your_value').attr().add('selected');