div(tabelle) neugeladen button(tabelle) dann ohne funktion - Druckversion +- Javascript-forum (https://javascript-forum.de) +-- Forum: Entwicklung (https://javascript-forum.de/forumdisplay.php?fid=4) +--- Forum: Javascript (https://javascript-forum.de/forumdisplay.php?fid=6) +--- Thema: div(tabelle) neugeladen button(tabelle) dann ohne funktion (/showthread.php?tid=2872) |
div(tabelle) neugeladen button(tabelle) dann ohne funktion - black79 - 25.04.2024 Code: <?php Code: $("#button1").click(function(){ wurde das div id="table_user" neugeladen, hat der Button in der Tabelle keine Funktion mehr. RE: div(tabelle) neugeladen button(tabelle) dann ohne funktion - Sempervivum - 25.04.2024 Wenn Du den Inhalt des div#table_user neu lädst parst der Browser das neu und die Eventlistener gehen verloren. Das lässt sich einfach beheben, indem Du dir das Eventbubbling zu Nutze machst, siehe das Beispiel hier: https://api.jquery.com/on/#direct-and-delegated-events RE: div(tabelle) neugeladen button(tabelle) dann ohne funktion - black79 - 26.04.2024 (25.04.2024, 14:58)Sempervivum schrieb: Wenn Du den Inhalt des div#table_user neu lädst parst der Browser das neu und die Eventlistener gehen verloren. Das lässt sich einfach beheben, indem Du dir das Eventbubbling zu Nutze machst, siehe das Beispiel hier: Hallo, vielen Dank für Deine Antwort. Das mit dem Eventlistener ist alles Neuland für mich. Hast Du zum Einstiegt ein kleines Beispiel für mein Projekt? Muss ich den Event-Handler kopieren? Vielen Dank RE: div(tabelle) neugeladen button(tabelle) dann ohne funktion - Sempervivum - 26.04.2024 Hallo, leider wird in der Doku von jQuery ein entscheidender Vorteil des Eventbubbling bzw. -delegation nicht erwähnt: Damit funktionieren Eventlistener auch dann, wenn die betr. Elemente nachgeladen werden, wie es bei dir der Fall ist. Das Beispiel in der Doku kannst Du auch nicht 1-zu-1 auf deinen Fall übertragen sondern Du musst den Eventlistener auf ein Element registrieren, das außerhalb des nachgeladenen Bereiches liegt. D. h. bei dir müsste es so aussehen: Code: $(document).on('click', 'sel', function(event) { 'td button' RE: div(tabelle) neugeladen button(tabelle) dann ohne funktion - black79 - 26.04.2024 (26.04.2024, 16:25)Sempervivum schrieb: Hallo, leider wird in der Doku von jQuery ein entscheidender Vorteil des Eventbubbling bzw. -delegation nicht erwähnt: Damit funktionieren Eventlistener auch dann, wenn die betr. Elemente nachgeladen werden, wie es bei dir der Fall ist. Danke :-) das funktioniert sehr gut! |