Heim > Web-Frontend > js-Tutorial > Wie kann ich Ereignisse aus dynamisch hinzugefügten Elementen in jQuery verarbeiten?

Wie kann ich Ereignisse aus dynamisch hinzugefügten Elementen in jQuery verarbeiten?

Patricia Arquette
Freigeben: 2024-12-11 19:50:19
Original
661 Leute haben es durchsucht

How Can I Handle Events from Dynamically Added Elements in jQuery?

Verarbeitung von durch dynamisch generierte Elemente ausgelösten Ereignissen

Beim dynamischen Hinzufügen von Elementen zum DOM kann die Erfassung von durch diese Elemente ausgelösten Ereignissen mithilfe von Standard-Ereignishandlern problematisch sein. Dieses Problem entsteht, weil die Ereignishandler angehängt werden, bevor die Elemente erstellt werden, was dazu führt, dass die Ereignisse nicht erfasst werden.

jQuery bietet eine Lösung für dieses Problem durch die Verwendung der .on()-Methode (oder .delegate). () in älteren Versionen). Mit dieser Methode können Sie die Ereignisbehandlung an ein statisches Vorgängerelement delegieren, das bereits vorhanden ist, wenn der Handler gebunden wird. Dadurch wird sichergestellt, dass Ereignisse aufsteigen und vom Handler erfasst werden können.

In Ihrem speziellen Fall können Sie Ihren Code so ändern, dass er die .on()-Methode wie folgt verwendet:

// jQuery 1.7 or above
$('#modal').on('keyup', 'input', function() {
    handler = $(this).val();
    name = $(this).attr('name');
});
Nach dem Login kopieren

// jQuery 1.6 oder niedriger

$('#modal').delegate('input', 'keyup', function()
{
    handler = $(this).val();
    name = $(this).attr('name');
});
Nach dem Login kopieren

Indem Sie die Ereignisbehandlung an das #modal-Element delegieren, das bereits vorhanden ist, wenn die Ereignishandler gebunden sind, können Sie Ereignisse erfassen ausgelöst durch dynamisch generierte Eingabeelemente innerhalb dieses Elements.

Das obige ist der detaillierte Inhalt vonWie kann ich Ereignisse aus dynamisch hinzugefügten Elementen in jQuery verarbeiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage