devolución de llamada después de la función jQuery.trigger ()
Tengo un pequeño problema aquí. Tengo que desencadenar un evento que contiene $ .post () para cargar un formulario y asignarlo a un DOM. Una vez hecho esto, he editado los campos del formulario.
Lo intenté:
$.when(function(){
$('#type_rank_field').trigger('change'); //calls the $.post() to load the form
})
.done(function(){
$('#quest_'+questions[i].split('|')[1]).children('option[value="'+questions[i].split('|')[0]+'"]').attr('selected',true);
});
Desafortunadamente esto no funciona y si lo dejo así:
$('#type_rank_field').trigger('change');
$('#quest_'+questions[i].split('|')[1]).children('option[value="'+questions[i].split('|')[0]+'"]').attr('selected',true);
El cambio incluso se ve así:
$('#type_rank_field').live('change',function(){
var id = $(this).children('option:selected').attr('id');
var id_edited = get_id_from_id(id);
$.post('ajax/load_questions_of_rank.ajax.php',{id: id_edited},function(data){
//alert(data);
$('#rank_fields').html(data);
});
});
Luego, la edición del formulario se ejecuta antes de que el formulario se cargue correctamente y se adjunte a DOM. Esta podría ser una pregunta estúpida para los chicos de JavaScript, pero yo soy principalmente un chico de PHP, así que no seas cruel :-)
Gracias