Mein Onclick-Ereignis funktioniert. Wenn dieses onclick -Ereignis jedoch in dynamischem HTML ist, funktioniert es nicht mehr. Wie in: nichts passiert.jQuery onclick feuert nicht auf dynamisch eingefügte HTML-Elemente?
$(document).ready(function() {
$("#guestlist .viewguestdetails").click(function() {
$(".guestdetails[data-id='18']").toggle();
});
});
ich dann HTML zu einer Seite dynamisch hinzugefügt:
<div id="guestlist">
<span class="completeguestdetails" data-id="18">(add your data)</span>
<div class="guestdetails" data-id="18" style="display: none;">
some data
</div>
</div>
aber wenn ich auf, dann „(Ihre Daten addieren)“ nichts passiert. Wenn ich den HTML-Code statisch auf meiner Seite habe, funktioniert das Umschalten des Divisors 'guestdetails'. Es scheint, dass kein Ereignis mit dynamisch eingefügtem HTML verknüpft ist.
UPDATE:
Die neue dynamische HTML-I i eine Zeile in einer vorhandenen Tabelle bin einfügen. Die anderen Reihen haben bereits Veranstaltungen zu den Onclick Ereignisse gebunden, wie:
$("span.guestattendance").click(function() {
if ($(this).hasClass('checkbox-on')) {
$(this).removeClass('checkbox-on').addClass('checkbox-off');
$("#guestday").removeClass('checkbox-on').addClass('checkbox-off');
}
else {
$(this).removeClass('checkbox-off').addClass('checkbox-on');
if ($("#guestceremony").hasClass('checkbox-on') && $("#guestreception").hasClass('checkbox-on') &&
$("#guestdiner").hasClass('checkbox-on') && $("#guestparty").hasClass('checkbox-on')) {
$("#guestday").removeClass('checkbox-off').addClass('checkbox-on');
}
}
});
Da kann ein Benutzer mehr als 1 Zeile einzufügen, ich nicht die ID verwendet haben, sondern ein Wrapper um das Element hinzugefügt Ich bin Einfügen:
und dann in ready() Funktion:
$('.newrow_wrapper').on('click', 'span', function() {
$(".guestdetails[data-id='" + $(this).attr('data-id') + "']").toggle();
});
Das erste Problem ist jedoch, dass offenbar, wenn ich ein div wickeln um eine tr-Tag, alle t r und td Tags werden aus dem eingefügten HTML entfernt! Auch wenn ich auf den Bereich klicke, um die Gastdetails anzuzeigen, passiert nichts.
Ich habe dies versucht, finden Sie in meinem aktualisierten Beitrag. Aber es funktioniert nicht ... was vermisse ich? – Flo
Nützliche Antwort, speicherte meine Zeit –