Majesteetlike kasutajate registreerimisvorm. Kohandatud kasutaja registreerimisvormi loomine WordPressis

Avalikustamine: Teie tugi aitab saiti töös hoida! Me teenime mõnede sellel lehel soovitatud teenuste eest suunamistasu. rohkem teada saada

Jagamine on hoolimine!

Viimati uuendatud 17. detsembril 2019

Veebivorme kasutavad peaaegu kõik veebisaidid mitmesugustel eesmärkidel. Foorumite ja sotsiaalvõrgustike kasutajad kasutavad sisu lisamiseks ja teiste kasutajatega suhtlemiseks vorme. Veebisaidid, mida saab kohandada isikupärastatud kasutuskogemuse loomiseks (nt kohandatavad uudistevood), kasutavad vorme, mis võimaldavad kasutajatel hallata lehel kuvatavat sisu. Ja peaaegu iga veebisait kasutab vorme, mis võimaldavad veebisaidi külastajatel ühendust võtta veebisaiti haldava organisatsiooni või isikuga. Veebivormid on võimalikud tänu mitme tehnoloogia integreerimisele:

  • HTML vormiväljade ja siltide loomiseks ning kasutaja sisendi vastuvõtmiseks.
  • CSS vormi esitluse stiiliks.
  • JavaScript vormisisestuse kinnitamiseks ja Ajaxi toega interaktsioonide pakkumiseks.
  • Serveripoolsed keeled (nt PHP) vormiandmete töötlemiseks.

Selles juhendis käsitleme kõiki veebivormide loomiseks kasutatavaid HTML-i elemente. Meil ​​on ka muid teemasid, nagu vormi koostamine , vormide kujundamine ja kujundamine ning vormide kasutatavuse ja juurdepääsetavuse tagamine .

Vormi struktuuri määratlemine

lõigu sisu.

kontaktivorm

Nimi:

E-post:

Teema:

sõnum:

Lõigu täiendav sisu

Brauseris renderdades oleks kontaktivorm ümbritsevast sisust selgelt eraldatud.

Väljakomplekti element on valikuline, kuid seda kasutatakse tavaliselt seotud elementide rühmitamiseks pikkadel ja keerukatel vormidel või vormiväljade eraldamiseks lähedalasuvatest elementidest, kui vorm esitatakse koos vormivälise sisuga. HTML5 lisas kolm atribuuti, mida saab väljakomplekti elementidele rakendada:

  • keelatud: kasutatakse väljakomplekti kõigi vormide keelamiseks. Pange tähele, et kasutasime seda atribuuti ülaltoodud näitevormis.
  • vorm: kasutatakse väljakomplekti seostamiseks ühe või mitme vormielemendi ID-ga. Pange tähele, et brauseri tugi sellele atribuudile on väga piiratud.
  • nimi: seostab nime väljakomplektiga .

Sisendelement

Sõltuvalt loodava vormi tüübist on täiesti võimalik luua vorm, mis sisaldab ainult kahte tüüpi elemente: ühte vormielementi ja ühte või mitut sisendelementi. Elementi kasutatakse mitmesuguste sisendtüüpide loomiseks. väljad, millega vormi kasutajad saavad suhelda.

Levinud väärtused

Sisendelement on väga paindlik element, mille välimus ja käitumine võivad elemendile rakendatud tüübiatribuudi põhjal dramaatiliselt muutuda. Kõige tavalisemad tüübiväärtused on järgmised: tekst: atribuudi type="" vaikeväärtus. Määratleb ühe 20 tähemärgi laiuse tekstirea. Laiust saab reguleerida atribuudi size abil, nagu näete meie eelmise näite vormikoodis. parool: parooli tüüp on põhimõtteliselt sama mis tekstiväljal, välja arvatud see, et parooliväljale sisestatud märgid on maskeeritud. raadio: raadionuppe saab kasutada mitme valiku pakkumiseks, millest saab valida ainult ühe. märkeruut: Märkeruudud sarnanevad raadionuppudega, kuid korraga võib olla aktiivne rohkem kui üks valik. See tähendab, et märkeruutude komplektiga saab esitada mitu väärtust, samas kui raadionuppude komplekt aktsepteerib ainult ühte väärtust. Esita: Esitamise tüübi väärtus loob vormi esitamise nupu. Klõpsamisel sooritab vorm vormielemendiga seotud toiminguatribuudis määratud toimingu. Paljud vormid kasutavad ainult ühte või kahte sisestustüüpi ja enamik lihtsaid vorme on koostatud ainult ülaltoodud tüüpidest. Siiski on palju täiendavaid tüüpe, mida saate kasutada vormiandmete vastuvõtmiseks, mis ei sobi ühegi ülaltoodud tüüpiga.

vähem tuntud väärtused

Need sisestustüübid on vähem levinud kui ülalloetletud, kuid neid toetavad peaaegu kõik brauserid ja neid saab kasutada mitme erinevat tüüpi vormisisendite koostamiseks. nuppu: Kui soovite nupul klõpsamisel käivitada a, saab nupu sisestustüübi abil luua nupu, mida saab seostada mitmesuguste toimingutega. peidetud: seda atribuuditüüpi kasutatakse tavaliselt samaaegselt atribuudiga value, mida me hetkega katame, et lisada igale vormi esitamisele eelmääratletud väärtus. Näiteks kui teil on kontaktivormid viiel erineval lehel, saate lisada igale vormile esitada selle lehe nimi, kust kontaktvorm esitati. lähtestada: seda tüüpi kasutatakse lähtestamisnupu loomiseks, mis tagastab kõik vormiväljad nende vaikeolekusse. faili: kui soovite lubada vormi kasutajatel faile üles laadida ja esitada, annab selle võimaluse. pilt: Varem oli levinud pildi kasutamine saatmisnupuna. Kuigi see tüübi väärtus on endiselt kehtiv, ei kasutata seda tänapäevases veebivormide kujunduses kuigi sageli. Selle asemel kasutage nupu stiili loomiseks CSS-i.

Uus HTML5 lisatud väärtused

HTML5 spetsifikatsioonis on määratletud mitu täiendavat sisenditüüpi. Paljudel nendel tüüpidel on brauseri tugi piiratud. Nii et kui kasutate neid, kontrollige kindlasti veebilehelt caniuse.com brauseri tuge ja pakkuge vajaduse korral piisavaid varuvalikuid. otsing: see on õige tüüp määramaks, kas teie vorm pakub otsingufunktsioone. Erinevalt enamikust muudest HTML5-sse lisatud sisendite tüüpidest toetavad type="search" kõik brauserid. Pidage meeles, et see funktsioon ei paku tegelikult otsingufunktsiooni, vaid loob lihtsalt vormi sisestusvälja, mis on mõeldud kasutamiseks otsingufunktsiooni osana. värvi: kui see sisendtüüp on määratud, kuvatakse värviline nupp, mis käivitab põhivärvivaliku tööriista. Määrake värvi vaikeväärtus, kasutades väärtuse atribuuti ja kuueteistkümnendvärvikoodi, näiteks: . number: see tüüp loob välja numbri sisestamiseks, mille kasti paremal küljel on juurdekasvunupud. Vastuvõetavatele kirjetele saab määrata piiranguid atribuutidega max , min ja step, kuid brauserid, millel puudub selle elemendi tugi, naasevad tavaliselt standardsele tekstisisendile, mis neid piiranguid ei tunne. ulatus: Selle elemendi brauseri tugi on mõne erandiga üsna hea. Kasutage seda atribuuti liuguri loomiseks, mida saab kasutada väärtuse valimiseks määratud vahemikus. Näiteks loob see kood liuguri numbri 100 ja 1000 vahel valimiseks 50 kaupa: . Valitud väärtuse reaalajas eelvaate pakkumiseks peate vahemiku elemendi siduma mõne muu tehnikaga. Õnneks on HTML5 Doctoril lihtne viis seda teha väljundelemendi abil. Kuupäeva ja kellaaja tüübid: HTML5 lisas mitmeid sisestustüüpe, mida saab kasutada kellaaja ja kuupäeva väärtuste määramiseks. Näiteks määrab kuupäeva tüüp juhtelemendi aasta, kuu ja päeva sisestamiseks. Kuupäeva sisestusse aja lisamiseks kasutage ikooni datetime-local. Kui soovite kellaaega ilma kuupäeva teabeta, kasutage aja sisestustüüpi. Vähem spetsiifilised sisestustüübid hõlmavad kuu ja nädala valikuid, mida saab kasutada nädala või kuu valimiseks aasta sees ilma päeva või kellaaega määramata. Brauserid on seda tüüpi sisendile toe lisamisega aeglased, seega kontrollige kindlasti brauseri tuge ja pakkuge seda tüüpi sisendi kasutamisel varuvõimalusi. Kontaktandmete tüübid: Laialdane tugi on saadaval kolmele sisenditüübile, mida kasutatakse asjakohaste üksikasjade (nt e-posti aadressid (e-post), telefoninumbrid (tel) ja veebisaidi URL-id (url) kogumiseks.

Ühised sisendatribuudid

Kuigi atribuut tüüp on vaieldamatult enimkasutatav ja kasulikum sisendatribuut, on kasulike vormide koostamiseks vaja teada mitmeid muid atribuute. nimi: sisendelemendile määratud nimi esitatakse koos seotud väljale sisestatud väärtusega. Teisisõnu, kui selle koodiga sisendelemendisse sisestataks väärtus "Fred". esitatav väärtus oleks "first_name=Fred". väärtus: sisendelemendi väärtus täidab erinevat funktsiooni olenevalt sisendi tüübist, millele seda rakendatakse. Kui seda rakendatakse esitamis-, lähtestamis- või nuputüüpidele, kasutatakse väärtust nupu tekstina. Tekstiväljadele rakendatuna annab see väljaga seotud vaikeväärtuse. Kui see on seotud märkeruudu või raadionupuga, annab see väärtus väärtuse, mis selle väljaga valimisel seostatakse.

Kes suunas teid meie veebisaidile?:

roosa:

Punane:

Loe ainult: Kui sisendelemendi atribuutina kasutatakse kirjutuskaitstud funktsiooni, ei saa välja väärtust muuta. JavaScripti saab kasutada kirjutuskaitstud atribuudi eemaldamiseks pärast mõne muu toimingu, näiteks nupu klõpsamist või märkeruudu valimist. Näiteks kirjutuskaitstud saab rakendada esitatavale sisenditüübile ja eemaldada, kui valiti ruut, mis kinnitab, et kasutaja nõustus veebisaidi teenusetingimustega. puudega: kasutasime seda atribuuti selles õpetuses varem manustatud näidisvormiga. Kasutage seda atribuuti terve vormi, väljakomplekti või üksiku välja keelamiseks. suurus: Kasutage tekstisisestustüüpidega atribuuti size, et määrata välja nähtav laius, piiramata väljale sisestatavate märkide arvu. max pikkus: kui te ei soovi antud väljal lubada rohkem kui teatud arvu märke, kasutage maxlengthi, et piirata nende väljade arvu määratletud tähemärkidega. kontrollitud: kui soovite, et vormi laadimisel oleks märkeruut või raadionupp eelvalitud, rakendage see atribuut sellele sisendelemendile. Nendel atribuutidel on laialdane tugi ja neid kasutatakse tavaliselt vormidega, mida kohtate iga päev.

HTML5 lisanud uued atribuudid

HTML5 lisas palju uusi atribuute, mida saab seostada sisendelementidega. Mõnede nende elementide brauseri tugi on piiratud, seega kontrollige kindlasti tuge ja pakkuge toetamata brauserite kasutajatele varuvalikuid. automaatne täitmine: kui teie vorm sisaldab üldisi välju, võimaldab automaatse täitmise sisselülitamine külastajate brauseris soovitada kirjeid varem täidetud vormide põhjal. autofookus: kasutage seda atribuuti vormivälja tuvastamiseks, mis peaks vormi laadimisel fookuses olema. mitmekordne: atribuuti Mitu saab kasutada meili- ja failisisestustüüpidega, et vormi kasutajad saaksid sisestada rohkem kui ühe väärtuse. Kui seda kasutatakse e-posti sisestamiseks, saab esitada rohkem kui ühe e-posti aadressi, eraldades iga aadressi järgmisest komaga. Kui seda kasutatakse failisisendite jaoks, saab valida ja esitada korraga mitu faili. muster: võib juhtuda, et soovite täpsustada, et sisendi väärtus peab vastama teatud kriteeriumidele. Näiteks võite nõuda, et parooliväli sisaldaks vähemalt ühte suurtähte, ühte väiketähte ja ühte numbrit ning vastaks minimaalse pikkuse nõudele. Mustri atribuuti saab kasutada avaldiste loomiseks, mille alusel sisendväärtusi valideeritakse. Nende avaldiste kirjutamine, mida nimetatakse regulaaravaldisteks või RegExp-iks, ei kuulu selle õpetuse raamesse. Saate õppida regulaaravaldiste kohta Wikipedias ning seejärel kirjutada ja testida oma avaldisi tasuta veebisaidil RegExr. kohatäide: enamik vorme sisaldab kohatäite teksti, mis kaob kohe, kui klõpsate väljal või alustate tippimist. Kasutage seda atribuuti kohahoidja teksti lisamiseks ja määratlemiseks mis tahes teksti aktsepteerivate sisendite jaoks. nõutud: kui vormi teatud väljad on kohustuslikud, kasutage seda atribuuti, et vältida mittetäielike vormide esitamist. vormi: kui teil on kunagi vaja asetada sisendelement vormielemendist väljapoole, saate nihutatud elemendi seostada, kasutades vormiatribuuti ja rakendades väärtust, mis vastab vormile rakendatud atribuudile id. Vormi esitamise nupu käitumise muutmine Esitamiseks ja kujutise sisenditüüpide jaoks saab rakendada viit atribuuti, et alistada põhivormielemendile rakendatud atribuudid. Need atribuudid hõlmavad järgmist:

  • moodustamine: määratlege vormi esitamise töötlemiseks põhivormi toiminguatribuudis tuvastatust erinev URL. Kasutatakse sageli siis, kui vorme saab töödelda mitmel viisil, et pakkuda erinevaid vormi esitamise valikuid.
  • formenctüüp: määrake vormi esitamisel kasutatava kodeeringu tüüp. Kasutatav väärtus alistab vormi ülemelemendi atribuudile enctype rakendatud väärtuse.
  • vormimeetod: Seda atribuuti kasutatakse määrake kas hankimise või postitamise meetodi väärtus ja see alistab emavormile rakendatud meetodi atribuudi.
  • vorminovalidaat: kui te ei soovi, et vormi sisendit esitamisel kinnitataks, võite kasutada seda atribuuti.
  • vormisihtmärk: alistage vormi ülemelemendile rakendatud sihtatribuut, rakendades selle atribuudi esitus- või kujutise sisenditüübi väljale.

Määrake type="image" suurus: kui kasutate vormi esitamise nupu loomiseks pildisisestustüüpi, saate kujutise suurust juhtida kõrguse ja laiuse atribuutide abil. Teise võimalusena saate sama teha ka CSS-iga. Enamik arendajaid ja disainereid soovitaks neid atribuute vältida ja nuppude välimust CSS-iga juhtida. Määrake arvväärtustele piirangud ja juurdekasvud: Saate kasutada atribuute min , max ja step, et määratleda minimaalsed ja maksimaalsed väärtused ning nende väärtuste vahele jäävad vastuvõetavad sammud iga sisendi jaoks, mis aktsepteerib arvväärtusi.

Rippmenüüd, tekstialad ja nupud

Sisendid ei ole ainsad elemendid, mida saab vormiväljade loomiseks kasutada. Vormidega saab seostada muud tüüpi elemente, et luua ripploendeid või valikuid, vabas vormis tekstialasid ja paindlikke nuppe.

Eeltäidetud rippmenüüd

Eeltäidetud valikute ripploendi loomiseks, millest veebisaidi külastaja saab valiku teha, kasutage välja loomiseks valikuelementi ja pesastage mitu valikuelementi, et luua erinevad valikud, mis peaksid rippmenüüs ilmuma. . Näiteks väljamõeldud e-poe jaoks pretensioonikate värvivalikute rippmenüü loomiseks võib kasutada järgmist koodi:

Pange tähele, et väärtus on see, mis vormiga tegelikult esitatakse, samas kui ava- ja sulgemärgendi vaheline tekst on see, mis esitatakse vormi täitvale külastajale. Näiteks kui külastaja valib „Lopsakas mets”, on vormiga esitatud tegelik väärtus roheline . Meie rippmenüü kuvatakse brauseris järgmiselt.

Tuulega pühitud liivadüün Lopsakas mets, rahutu vesi, sügav öö

Vabas vormis tekstialad

Kõik tekstisisendid, mida oleme seni näinud, näiteks , aktsepteerige ainult ühte tekstirida. Kui aga soovite luua pikema tekstisisestuse jaoks suurema tekstiala, siis üherealine sisestusväli ei tööta. Tekstiala element on õige valik suure tekstisisestusala loomiseks, mis suudab vastu võtta tekstisisestuse, mis ei tööta renderdada hästi ühel real. Tekstialal on kolm osa:

  1. Tekstiala luuakse avamise ja sulgemise siltide sisestamise teel. Kõik siltide vahele pesatud tekst laaditakse vormi laadimisel tekstialale ja esitatakse koos vormiga, välja arvatud juhul, kui vormi esitav külastaja teksti tekstialast välja ei kustuta.
  2. Kui soovite määrata tekstiala suurust, kasutage atribuuti rows, et määrata tekstiridade arv, mida peaks olema võimalik kuvada ilma tekstiala suurust muutmata.
  3. Eelmääratletud laiuse määramiseks kasutage atribuuti cols. Rakendatav väärtus on märkide arv, mis kuvatakse ühel real enne teisele reale mähkimist.

Tekstiala elementide suurust saab muuta. Ridade ja veergude atribuudid määravad aga tekstiala suuruse, kui brauser selle esimest korda renderdab, ja määravad ka minimaalse ruumi, mille suurust saab kohandada.


See kood loob kaks identse suurusega tekstiala, mis on kolme rea pikkused ja mahutavad 60 tähemärki rea kohta. Nende suurust saab muuta mis tahes suuruseks, mis on suurem kui vaikesuurus. Pange tähele, kuidas kohatäidetekst lisati esimesele koos kohatäiteelemendiga, kuid teises näites pesastatakse lihtsalt ava- ja sulgemärgendi vahele. Allpool näete, kuidas need kaks koodibitti renderdatakse.

Kuigi tekstiala suurust saab määrata ridade ja veergudega, on parem tava kasutada tekstialade stiili ja suuruse määramiseks CSS-i. Paljusid atribuute, mida saab rakendada sisendelementidele, saab rakendada ka tekstiala elementidele. Lisaks meie ülaltoodud näites sisalduvatele atribuutidele, mida saab tekstialadele rakendada, on järgmised: autofookus , keelatud , vorm , maxlength , nimi , kirjutuskaitstud , kohustuslik ja murramine .

Paindlikud nupud

Vormide jaoks nuppude loomiseks on kaks võimalust.

Oleme juba rääkinud sisendelemendist ja erinevatest tüüpidest, mida saab nuppude loomiseks kasutada. Miks siis on veel üks nupp? Nupuelemendid erinevad oma sisendnõbudest vähemalt kahel viisil.

  1. Kuna nupud koostatakse avamis- ja sulgemissildiga, saab avamis- ja sulgemärgendi vahele pesastada erinevat tüüpi sisu – tavaliselt teksti ja pilte – ning see renderdatakse nupul.
  2. Nupud ei pea olema vormielemendiga seotud. Neid saab kasutada eraldiseisvate nuppudena skriptide käivitamiseks, ankurelemendi sisuna ja muude toimingute tegemiseks.

HTML5-sse lisatud vormielemendid

HTML5-sse lisati kolm uut vormielementi: andmeloend: kasutage seda elementi sisendelemendi soovitatud automaatse täitmise väärtuste loendi esitamiseks. Andmeloendi elemendi kasutamiseks loo esmalt loendi atribuudiga sisendelement. Seejärel looge atribuudiga id andmeloendi element. Sisendloendi atribuudile rakendatud väärtus peab ühtima andmeloendi ID-ga. Väärtused lisatakse andmeloendisse, lisades andmeloendi avamise ja sulgemise siltide vahele valikuelemendid. Siin on näide sellest, kuidas see kõik töötab:

Kui me selle koodi brauseris renderdame, ilmub sisestuselement. Kui hakkame tippima, tehakse andmeloendis sisalduvate valikute põhjal automaatse täitmise soovitused. Pange tähele, et vormi esitavad kasutajad ei piirdu nende valikute valimisega. Soovi korral võivad nad siiski valida, kas sisestada väärtuse, mis ei ole kaasatud.

Mis on teie lemmik veebitehnoloogia?

väljund: kasutage seda elementi arvutuse tulemuse või kasutaja sisendi kuvamiseks. Seostage see sisendelemendiga, kasutades atribuuti for väärtusega, mis ühtib asjakohase sisendelemendi ID-ga, või seostage see vormiga, lisades vormiatribuudi, kasutades väärtust, mis ühtib asjakohase vormi ID-ga . Väljundelemendi saab siduda ka vahemiku elemendiga, et anda vormi kasutajatele teada täpne väärtus, mida esindab vahemiku elemendi liuguri praegune asukoht. Väljundi ja vahemiku elementide kasutamine sel viisil ei kuulu selle sissejuhatava õpetuse ulatusse, kuid kui soovite neid kahte elementi koos kasutada, saate selle tehnika kohta lisateavet HTML5 Doctorilt.

Järgmised sammud

See õpetus on andnud ülevaate elementidest, mida kasutatakse veebivormide koostamiseks. Järgmine samm on proovida mõningaid omandatud teadmisi. Teised selles jaotises olevad õpetused juhendavad teid broneerimisvormi loomise, vormide kujundamise ja kujundamise protsessi ning tagama, et teie vormid vastaksid kasutatavuse ja juurdepääsetavuse juhistele .

Korduma kippuvad küsimused

Kuidas piirata vormivälja ainult numbreid aktsepteerima?

Varem nõudis välja piiramine numbritega ainult JavaScripti kasutamist. Kuid pärast HTML5 väljalaskmist on nüüd lihtne piirata välja ainult numbriliste sisestustega. Lihtsalt rakendage numbri väärtus kohaldatava sisendelemendi tüübi atribuudile. Näiteks:

Renderdamisel loob tekstisisestusvälja, mis aktsepteerib ainult numbreid.

Kuidas piirata vormivälja nii, et see aktsepteeriks ainult tähtnumbrilisi märke?

Varem oli ainus viis väljasisestuse piiramiseks tähtnumbriliste tähemärkidega jQuery või JavaScripti kasutamine ja kohandatud funktsiooni loomine. HTML5 lisas aga sisendelementide mustriatribuudi, mida saab kasutada vormivälja piiramiseks, et see aktsepteeriks ainult tähtnumbrilist sisendit. Siin on kood, mis teeb asja ära:

Sel juhul aktsepteerib mustri element väiketähti, suurtähti ja numbreid. Väärtuse teine ​​osa lokkis sulgudes määrab, mitu tähemärki kokku võib väljale sisestada. Vaatame, kuidas see brauseris välja näeb.

See toimib nii, et kui proovite esitada väärtusi, mis ei vasta määratud mustrile, kuvatakse pealkirja atribuut. Seega peaksite mustri atribuudi sisse panema mõned juhised, et kasutajad saaksid aru, mida nad on valesti teinud. . Selle suhteliselt uue atribuudi brauseri tugi on tõesti päris hea. IE 9 ja varasemad IE versioonid seda ei toeta ning Opera Minil puudub samuti tugi, kuid kõik teised brauserid toetavad seda atribuuti.

Kuidas panna vorm esitama, kui kasutaja vajutab sisestusklahvi?

Kui olete kohanud vormi, mida sisestusklahvi vajutamisel ei esitata, siis on keegi tahtlikult kujundanud vormi selliselt käituma – ja tegelikult poleks ta pidanud seda tegema. Veebi juurdepääsetavuse spetsifikatsioonid on selged: kujundusvormid, mis võimaldavad kaudset esitamist. Mis on kaudne esitamine? Vormi esitamine vajutades sisestusklahvi. Brauserid on loodud toetama kaudset esitamist. See toimib järgmiselt. Võtke näiteks see vorm: