Veebisaitide jaoks vormide loomine (praktiline õpetus)

Reageerige muudatustele veebivormides addEventListeneri abil

Kõik õpetuse videod Loo veebisaitidele vormide loomine (praktiline juhend)

Selles juhendis sukeldud sügavale ürituste käsitlemise maailma veebirakendustes JavaScriptiga. Õpid, kuidas kasutada addEventListener meetodit, et reageerida paindlikult muudatustele sisendväljades. Erinevalt lihtsamatest meetoditest nagu onchange või oninput, võimaldab addEventListener sul ühendada mitu sündmuse kuulajat samale elemendile ja saavutada sel viisil puhta eraldatuse funktsiooniloogika ja HTML-märgistamise vahel. Lähme koos läbi sammud, kuidas seda oma rakenduses rakendada.

Olulisemad teadmised

  • addEventListener'i kasutamine võimaldab registreerida mitu sündmuskäsitlejat samale elemendile.
  • Sündmuse kuulajad tuleks registreerida pärast seda, kui DOM on täielikult laetud, et tagada kõikide elementide kättesaadavus.
  • Sündmuse kuulajate eemaldamine peaks olema tavapärane praktika, et vältida mälulekkeid.

Samm-sammult juhend

Esiteks vajad HTML-dokumenti koos sisendväljaga. Lisa oma HTML-le sisendväli ID-ga, mida hiljem saad käsitleda. Paiguta sobivasse kohta -tag'i järgmine HTML-kood:

Reageeri muudatustele veebivormides addEventListener abil

Nüüd, et tagada, et sinu JavaScripti kood töötab, pead teisaldama -tag'i oma <body>-tag'i lõppu. See tagab, et DOM on täielikult laetud enne elementidele juurdepääsu võtmist. See väldib probleeme, mis võiksid tekkida, kui skript käivitatakse enne HTML-elemente.

Reageerige muudatustele veebivormides addEventListeneri abil

Nüüd saame JavaScriptiga rääkida sisendelementist. Sinu <script>-tag'is kasuta document.getElementById, et juurde pääseda sisendväljale. Siin on näidiskood, mille sa võid oma JavaScripti lisada:</script>

Reageerige muudatustele addEventListeneri abil veebivormides

Jaotisega, kus sa nüüd edukalt viitad sisendelemendile, on järgmine samm lisada sündmuse kuulaja. addEventListener'iga saad määrata sellele elemendile spetsiifilised sündmused nagu change või input. Nii saad reageerida, kui kasutaja teeb muudatuse oma sisendväljas.

Reageerige muudatustele veebivormides addEventListener-i abil

Lisaks on hea tava tagada, et saad vajadusel sama sündmuse kuulaja eemaldada. removeEventListener meetodiga saad eelnevalt lisatud kuulaja eemaldada. Veendu, et funktsioon oleks identne sellega, mida lisamisel kasutati, muidu ei pruugi kuulajat korralikult eemaldada.

Reageerige muudatustele veebivormides addEventListener abil

Levinud stsenaarium on lisada mitu sündmuse kuulajat samale elemendile. See võimaldab erinevate sündmusetüüpide paindlikumat käsitlemist. Siiski tuleb meeles pidada, et iga registreeritud funktsioon peaks omama oma loogilist eraldust, et tagada koodi loetavus ja hooldatavus.

Kui oled sündmuse kuulajad lisanud, on oluline need koristamise käigus eemaldada, eriti kui elementi enam vaja ei ole, näiteks komponentide puhul, mida enam ei renderdata. Selleks pead tagama, et kuulaja eemaldataks, kui element eemaldatakse DOM-ist või enam vajalik pole.

Reageerige muudatustele veebivormides addEventListeneri abil

Samuti tasub mõelda, kuidas saad laiendada sündmuse kuulajate kasutust. Mõnikord soovivad arendajad pakkuda täiendavaid parameetreid, nagu näiteks püüdmisrežiimi, et määrata, millises järjekorras sündmused töödeldakse. Need täiustatud võimalused nõuavad aga sügavamat arusaamist sündmuste edastamisest.

Reageerige muudatustele veebivormides addEventListeneriga

Veendu, et sinu JavaScripti kood jääb DOM-elementide taha, et tagada elementide õige käsitlemine dokumendi laadimisel. See on eriti oluline, kui sul on palju sündmuskäsitlejaid, et tagada elementviidete alati kohalik kehtivus.

Reageerige muudatustele veebivormides `addEventListener` abil

Kokkuvõte

Selge juhendi käigus käsitlesime põhilised sammud addEventListener'i kasutamiseks sündmustega tegelemiseks veebivormides. Oled õppinud, kuidas lisada, eemaldada ja reageerida mitmetele muudatustele.

Sagedased küsimused

Mis vahe on onchange'il ja addEventListener'il?Onchange on vanem meetod, mis lubab ainult ühe sündmuse töötleja, samas kui addEventListener võib lisada mitu töötlejat ühe sündmuse jaoks.

Millal peaksin kasutama removeEventListener'i?RemoveEventListener'i tuleks kasutada, kui elementi enam pole vaja või enne sündmuse töötleja taaskirjutamist.

Kuidas lisada sama elemendi jaoks mitu sündmuse kuulajat?Sa saad lihtsalt kasutada mitmeid addEventListeneri kõnesid sama elemendi jaoks, edastades erinevad funktsiooni viited.