Я обнаружил, что использование метода 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);