Esimerkiksi, kun teet ajaxin lukemaan viestilistaa, jokaisen viestin jälkeen on vastauspainike, luokka on "reply", jos käytät $(".reply").click(function(){ //do something... }), oletettavasti vastauspainiketta, jonka ajax lataa myöhemmin, click-tapahtuma on virheellinen. Itse asiassa helpoin tapa on kirjoittaa onclick="" suoraan tagiin, mutta tämän kirjoittaminen on itse asiassa vähän matalaa, ja paras tapa on sitoa klikkaustapahtuma luokan nimeen. On kaksi tapaa ratkaista ongelma, että dynaamisesti lisätyt elementtisolmut jqueryssä eivät voi laukaista tapahtumia, seuraavasti: Paremman esityksen vuoksi sanotaan, että tietyn sivun rungon alla on koodi, jonka rakenne on seuraava:
Menetelmä 1: Käytä elävää live()-funktio sitoo yhden tai useamman tapahtumankäsittelijän valittuun elementtiin ja määrittää, mitkä funktiot suoritetaan, kun kyseiset tapahtumat tapahtuvat. live()-funktio koskee valitsimen nykyisten ja tulevien elementtien sovittamista. Esimerkiksi elementit, jotka luodaan dynaamisesti skriptien kautta. Toteutus on seuraava:
Menetelmä 2: Käyttö Voit sitoa tapahtuman sen emä- tai runkoon on-menetelmällä seuraavasti:
Nyt voit yrittää nähdä, onko ongelma ratkaistu, toivon, että tämä artikkeli todella auttaa sinua.
Toinen, jota käytän, on vanhemman tason elementin sitomiseen...
|