Ho una tipica chiamata AJAX che aggiunge alcuni HTML alla pagina corrente. Voglio poter accedere al codice HTML appena inserito con i selettori jQuery tipici.Accesso all'oggetto DOM dopo la chiamata AJAX?
Ecco quello che mi come per essere in grado di fare ...
$.ajax({
url: url,
success: function(data) {
$('body').append(data);
}
});
$('#new_div').show();
#new_div
sarebbe qualche elemento HTML dai dati ho recuperato. Non voglio necessariamente associare eventi ai nuovi elementi (come click
), quindi l'utilizzo di qualcosa come .load()
o .on()
non funziona qui (per quanto ne so).
Ho provato a impostare la chiamata $.ajax()
a una variabile: var new_div = $.ajax(...)
ma questo non mi ha portato da nessuna parte.
a) Ha verificare la tua la richiesta di ajax funziona effettivamente (con console di sviluppo, avvisi o firebug) eb) qual è il suo output? – DanFromGermany
Sì, la richiesta funziona correttamente. L'output quando si tenta di accedere al nuovo elemento DOM al di fuori della chiamata di successo è solo indefinito. – Shpigford
AJAX è asincrono quindi il 'new_div' non è stato ancora aggiunto –