Мне очень нужна помощь. Я новичок в jQuery
, и я пытаюсь обновить dropdown list
или изменить его значение при выборе опции из списка.Обновить раскрывающийся список на основе опции выбора в списке
HTML
<select name="State_locate" class="State">
<option value=" " selected="selected">Select a state</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
</select>
<div id="City_1" class="Alabama">
<select name="City_location[]" class="CityExt">
<option value="Null" selected="selected">Select a city</option>
<option value="Avondale">Avondale</option>
<option value="Buckeye">Buckeye</option>
<option value="Catalina">Catalina</option>
</select>
</div>
<div id="City_1" class="Alaska">
<select name="City_location[]" class="CityExt">
<option value="Null" selected="selected">Select a city</option>
<option value="Lancaster">Lancaster</option>
<option value="Soth">Soth</option>
<option value="Foothills">Foothills</option>
</select>
</div>
JS
// JavaScript Document
$("select").bind("change", function() {
if ($(this).val() == "AL") {
$(".Alabama").slideDown();
$(".Alaska").slideUp(function() {
if ($('.Alabama').is(':visible')) {
$(".Alaska option[value='Lancaster']").attr('selected', 'selected')
}
});
} else if ($(this).val() == "AK") {
$(".Alaska").slideDown();
$(".Alabama").slideUp();
}
})
, что я пытаюсь сделать, когда выбрано состояние, то город падает вниз. Это работает отлично. Но после отправки значения города хранятся в массиве City_location[]
.
Проблема заключается в том, что если пользователь выбирает город для Аляски, а затем выбирает другой город под Алабамой перед отправкой формы, вы оказываетесь в двух городах под Алабамой и Аляской в массиве.
Я ищу способ выбрать значение «Нуль» для штата Аляска, если выбран Алабама. Но код, который у меня есть, не работает. Он работает только в том случае, если значение имеет значение «Null». Например, если я использую значение «Ланкастер», в этом разделе jQuery
кода
$(".Alaska option[value='Lancaster']").attr('selected', 'selected')
Это только работает один раз. Если я делаю это дважды, он не обновляется. Как я могу решить эту проблему.
Извините за длинный код. Спасибо за помощь.
Зачем вам хранить его в массиве? Вы выбираете несколько значений? –
Я хранил его в массиве, потому что, если я не делаю этого так, когда я отправляю свою форму, я не могу получить город, потому что выбор имеет то же имя. Это всего лишь пример кода, я пытаюсь сделать это для всех 50 состояний. Если бы у меня были имена с разными именами, тогда мой код будет длиннее. – Adagoon