Я, вероятно, делаю это наихудшим способом, но я пытаюсь: а) выбрать опцию выпадающего меню, основанную на полученных данных от плагина социальной сети, и б) вызвать событие onchange, чтобы отобразить и заполнить последующие выпадающие меню.
Я работаю с данными по стране, штату и городу. После загрузки страницы в раскрывающемся списке страны автоматически указываются два параметра: Мексика и США. Когда выбран один из них, автоматически заполняется раскрывающийся список состояний, а после выбора состояния - выпадающий список городов.
вот разметка:
<tr>
<td id="field-country" class="tags-form"></td>
<td><select onchange="CreateCountries.getRegions(this.value);"
name="country_id" id="country_id" value="" style="width: 130px;"
class="campos-tabla"></select></td>
</tr>
<tr>
<td id="field-state" class="tags-form"></td>
<td><select onchange="CreateCountries.getCities(this.value);"
name="state_id" id="state_id" value="" style="width: 130px;"
class="campos-tabla"></select></td>
</tr>
<tr>
<td id="field-city" class="tags-form"></td>
<td><select name='city_id' id="city_id" value=""class="campos-tabla"
style="width: 130px;"></select></td>
</tr>
и вот моя попытка: а) выбрать опцию раскрывающегося списка на основе полученных данных и б) активировать событие onchange, чтобы появилось следующее выпадающее меню, а затем продолжить мой следующий выбор:
_fillFields: function(){
logingygia.fields.firstname.val(logingygia.firstname);
logingygia.fields.lastname.val(logingygia.lastname);
logingygia.fields.email.val(logingygia.email);
if (logingygia.gender == 'm') {
$('#genderM').attr('checked',true);
}
else {
$('#genderF').attr('checked',true);
};
logingygia.fields.birthmonth.val(d2(logingygia.birthmonth));
logingygia.fields.birthday.val(d2(logingygia.birthday));
logingygia.fields.birthyear.val(logingygia.birthyear)
if (logingygia.country == 'United States') {
$('#country_id').val(212);
}
else {
$('#country_id').val(143);
};
if $('#country_id option: selected ').length){
if ($('#country_id option:selected').length)
$('#country_id').val("state_id).change();
}else{
return ("");
};
}
};
if (logingygia.country сам по себе выберет страну правильно. К сожалению, когда я объединяю это с «if country_id: option», ни одна страна не выбирается, и в раскрывающемся списке состояний отображается только «Selecciona», но не заполняться никакими вариантами ... что имеет смысл, поскольку страна не была выбрана.
Я уверен, что код - это беспорядок, поэтому я был бы очень признателен за лучшие советы.