[jquery] Установите выбранную опцию в поле выбора



5 Answers

$(document).ready(function() {
    $("#gate option[value='Gateway 2']").prop('selected', true);
    // you need to specify id of combo to set right combo, if more than one combo
});
Question

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

$("#gate").val('Gateway 2');

с

<select id="gate">
    <option value='null'>- choose -</option>
    <option value='Gateway 1'>Gateway 1</option>
    <option value='Gateway 2'>Gateway 2</option>
</select>

Но это не работает. Есть идеи?




$(function() {
$("#demo").val('hello');
});



Я нашел использование метода jQuery .val (), чтобы иметь существенный недостаток.

<select id="gate"></select>
$("#gate").val("Gateway 2");

Если этот флажок (или любой другой входной объект) находится в форме и есть кнопка сброса, используемая в форме, когда нажата кнопка сброса, установленное значение будет очищено и не будет сброшено до начального значения, как вы ожидали.

Кажется, это работает лучше для меня.

Для полей выбора

<select id="gate"></select>
$("#gate option[value='Gateway 2']").attr("selected", true);

Для ввода текста

<input type="text" id="gate" />
$("#gate").attr("value", "your desired value")

Для ввода текстовых полей

<textarea id="gate"></textarea>
$("#gate").html("your desired value")

Для флажков

<input type="checkbox" id="gate" />
$("#gate option[value='Gateway 2']").attr("checked", true);

Для переключателей

<input type="radio" id="gate" value="this"/> or <input type="radio" id="gate" value="that"/>
$("#gate[value='this']").attr("checked", true);



У меня такая же проблема.

Решение: добавьте обновление.

$("#gate").val('Gateway 2');
$("#gate").selectmenu('refresh');



// Make option have a "selected" attribute using jQuery

var yourValue = "Gateway 2";

$("#gate").find('option').each(function( i, opt ) {
    if( opt.value === yourValue ) 
        $(opt).attr('selected', 'selected');
});



  $("#form-field").val("5").trigger("change");



Related