Till exempel, när man gör en ajax för att läsa meddelandelistan, finns det en svarsknapp efter varje meddelande, klassen är "svar", om du använder $(".reply").click(function(){ //do something... }), förmodligen svarknappen i listan som laddas av ajax senare, kommer klickhändelsen att vara ogiltig. Faktum är att det enklaste sättet är att skriva onclick="" direkt i taggen, men att skriva detta är faktiskt lite lågt, och det bästa sättet är att binda en klickhändelse till klassens namn. Det finns två sätt att lösa problemet att dynamiskt tillagda elementnoder i jquery inte kan trigga händelser, enligt följande: För bättre presentation, låt oss säga att du har kod med följande struktur under brödtexten på en viss sida:
Metod 1: Använd levande Live()-funktionen binder en eller flera händelsehanterare till det valda elementet och specificerar vilka funktioner som ska köras när dessa händelser inträffar. Live()-funktionen gäller för att matcha nuvarande och framtida element i selektorn. Till exempel element som skapas dynamiskt genom skript. Implementeringen är följande:
Metod 2: Användning på Du kan binda en händelse till dess förälder eller kropp genom on-metoden, enligt följande:
Nu kan du försöka se om problemet har lösts, jag hoppas att den här artikeln verkligen kan hjälpa dig.
Den andra jag använder är för att binda föräldranivåelementet...
|