Я борюсь с чем-то, что, по моему мнению, будет простым. Я знаю, что у меня была такая же проблема в простом javascript без JQuery. Что я пытаюсь сделать, это:Событие триггера JQuery добавляет контент, но DOM не готов после
//When the postal code blurs, lookup the city, country, province
$('#codePostal').blur(function(){
$.get('/fr/radio-telethon/ajax_code_postal.php', {code_postal: $('#codePostal').val()}, function(data){
if(data.code_postal.toLowerCase() == $('#codePostal').val().toLowerCase()){
$('#ville').val(data.ville);
$('#pays').val(data.pays);
$('#pays').trigger('change');
$('#province').val(data.province);
$('#province').trigger('change');
}
});
});
В основном это вызывает подстановки сценарий PostalCode и возвращает объект с данными. Сами данные верны, я могу предупредить об этом, и он показывает, что это хорошо. Проблема заключается в том, что триггер изменения на #pays (страна на английском языке) перезагружает информацию в #province (state), и похоже, что DOM борется, а не загружает информацию.
Если я предупреждаю между триггером по стране и регионом провинции, я могу правильно установить провинцию. Метод я использую для добавления провинций к коробке провинции является следующее:
//Empty the provinces
$('#province').empty();
//Get the new data
$.get('/include/radio-telethon/formulaire-ajax.php', {pays: code}, function(data){
//Loop the items
for(i in data.options){
$('#province').append('<option value="'+data.options[i].value+'">'+data.options[i].label+'</option>');
}
//Setup the label
$('#labelProvince').html(data.label);
});
Так что я думаю, что APPEND Мессинг все и делает весь DOM задерживаться и вот почему я не могу сделать $ ('#province') вал (data.province).
Это я? Или есть волшебный трюк, который я не могу найти ...
О, и я также пытался сделать $ ('# провинция') готовы (функция() {$ (это) .val (data.province);}). –