Mam typowe wywołanie AJAX, które dodaje trochę kodu HTML do bieżącej strony. Chcę mieć dostęp do nowo wstawionego HTML z typowymi selektorami jQuery.Dostęp do obiektu DOM po wywołaniu AJAX?
Oto co ja jak aby móc zrobić ...
$.ajax({
url: url,
success: function(data) {
$('body').append(data);
}
});
$('#new_div').show();
#new_div
byłby jakiś element HTML z danymi ja odzyskać. Niekoniecznie chcę dołączać zdarzenia do nowych elementów (np. click
), więc używanie czegoś takiego jak .load()
lub .on()
nie działa tutaj (o ile wiem).
Próbowałem ustawić wywołanie $.ajax()
na zmienną: var new_div = $.ajax(...)
, ale to nigdzie mnie nie doprowadziło.
a) Czy zweryfikowaniu wniosek ajax faktycznie działa (z konsolą programisty, alertami lub firebug) oraz b) jaki jest jego wynik? – DanFromGermany
Tak, żądanie działa poprawnie. Wynik przy próbie dostępu do nowego elementu DOM poza wywołaniem sukcesu jest nieokreślony. – Shpigford
AJAX jest asynchroniczny, więc 'new_div' nie został jeszcze dodany –