Selles õpetuses saate teada, kuidas JavaScripti abil saab kasutajate poolt sisestatud info vormidest välja lugeda ja töödelda. Vormielemendid on iga veebilehe oluline osa, kuna need võimaldavad kasutajatel sisestada infot. Sageli arvatakse, et selleks on vaja keerulisi raamistikke. Selles artiklis näitame, kuidas saate lihtsa JavaScriptiga edukalt vormiandmeid töödelda.

Kõige olulisemad avastused

  • Sa õpid, kuidas luua vorme, kuidas saada JavaScriptiga juurdepääsu vormiandmetele ning kuidas kasutada preventDefault-i vormi vaikimisi käitumise vältimiseks, et saada kontroll kasutajate andmete sisestuse üle.

Samm-sammuline juhend

Alusta lihtsa HTML-vormi loomisega oma dokumendis. Veendu, et lisad erinevad sisestusväljad ja edukalt lisad ka Saada nupu.

Vormiandmete tõhus lugemine JavaScripti abil

Kui sinu vorm on brauseris nähtav, saad seda testida. Sisesta sisestusväljale nimi ja vajuta kas Enter klahvi või Saada nuppu. Kui kõik töötab korrektselt, peaksid nägema hüpikakent oma sisestatud nimega.

Vormiandmete tõhus lugemine JavaScripti abil

Selleks, et seda saavutada, lisame oma HTML-faili skriptimärgendi. Selles skriptis defineerid globaalse funktsiooni nimega submitForm, mis aktsepteerib sündmuse objekti parameetrina.

Skriptis saad määrata onsubmit sündmuse käsitleja oma vormile. See tähendab, et submitForm funktsioon kutsutakse välja, kui vorm edastatakse. Pane tähele, et sündmuse objekt on alati kättesaadav sündmuse käsitleja sees olles.

Vormiandmete tõhus lugemine JavaScriptiga

Üks olulisi samme on vormi vaikimisi tegevuse ärahoidmine, kutsudes välja event.preventDefault(). See on oluline, sest me ei soovi, et vorm lehekülge uuesti laeks pärast andmete edastamist.

Nüüd saame hakata vormiandmeid lugema. Vormiandmed on kättesaadavad event.target-is. See lihtsustab sisestatud teabele juurdepääsu.

Vormiandmete tõhus lugemine JavaScript'i abil

Vormiandmete saamiseks loo uus objekt konstruktori FormData abil ja edasta vormielement selleks parameetriks. Pärast objekti loomist saad sisestusväärtustele juurde pääseda get meetodi abil.

Vormiandmete tõhus lugemine JavaScriptiga

Näiteks koos formData.get('firstName')-ga saad sisestusvälja nimega 'firstName' väärtuse. Seda väärtust saad seejärel kasutada sõnumi loomiseks, mis kuvatakse kasutajale.

Vormiandmete tõhus lugemine JavaScripti abil

Kui soovid vormi laiendada ja lisada sinna veel ühe sisestusvälja, jätka järgnevalt: Lisa täiendav tekstiväli perekonnanime jaoks nimega 'lastName'. Seejärel võid võtta sarnaseid samme, et saada tema väärtus.

Vormiandmete tõhus lugemine JavaScriptiga

Mõlemad väärtused võid kasutada isikupärastatud sõnumi loomiseks. Näiteks: "Tere [Eesnimi] [Perekonnanimi]!"

Vormiandmete tõhus lugemine JavaScripti abil

Selleks, et sõnumit enam hüpikaknas mitte kuvada, vaid integreerida otse HTML-isse, võid lisada uue sektsiooni DOM-i, mis näitab tekstina sõnumit. Selleks loo div unikaalse ID-ga ja määra selle innerText vastava sõnumiga.

Vormiandmete tõhus lugemine JavaScriptiga

Nüüd võid proovida erinevaid variatsioone, kuvades andmeid konsoolis või kasutades neid edasisteks JavaScripti tegevusteks, näiteks POST-päringutena fetch abil.

Vormiandmete tõhus lugemine JavaScriptiga

See on kõige põhilisem viis, kuidas saad JavaScripti abil vormiandmeid lugeda ja kasutada. On palju muid võimalusi selle täiustamiseks, nagu valideerimiste lisamine või andmete edasine töötlemine serveris.

Kokkuvõte

Selles õpetuses õppisid, kuidas saad lihtsate JavaScripti funktsioonide abil vormiandmeid lugeda. Sa said teada event.preventDefault tähtsusest ja nägema, kuidas saab andmeid nii hüpikteadetena kui ka otse dokumendisse lisada. Selle baasiga oled hästi varustatud keerukamate vormide ja nende andmehalduse loomiseks.

Sagedased küsimused

Kuidas ma pääsen juurde vormiandmetele?Saad vormiandmetele juurdepääsu, luues uue FormData objekti new FormData(event.target) abil.

Mis juhtub, kui ma ei kutsu esile event.preventDefault() ?Ilma event.preventDefault() kutsuta käivitub brauseri vaikimisi käitumine, mis võib põhjustada lehe värskendamise.

Kas lehel võib olla mitu vormi?Jah, lehel võib olla mitu vormi ning iga vorm võib omada oma onsubmit funktsiooni.

Kuidas saan kasutada vormiandmeid Fetch päringu jaoks?Saad vormiandmed teisendada JSON formaati ja seejärel saata Fetch API abil serverile.

Kas JavaScripti raamistikud on vormide töötlemiseks vajalikud?Ei, raamistikke pole vaja kasutada. Vormide töötlemise saad täielikult teha puhta JavaScriptiga.