Kontrola povinných polí. Polia označené hviezdičkou sú povinné Podmienky používania Yandex pole je povinné

13. januára 2011 o 01:09
  • Rozhrania
  • Preklad

Webové formuláre zohrávajú veľkú úlohu pri každodennom používaní internetu. Ak vyvíjate webové stránky, s najväčšou pravdepodobnosťou sú na nich prítomné: či už ide o jednoduchý formulár spätnej väzby alebo sofistikovanú webovú aplikáciu. Tu je niekoľko tipov, ktoré vám pomôžu vytvoriť ľahko použiteľné formuláre.

1. Jasne označte povinné polia

Je nepríjemné, keď používateľ odošle vyplnený formulár a neskôr zistí, že vynechal povinné polia.
Je bežnou praxou označiť povinné polia hviezdičkou (*) vedľa ich názvu. Explicitne uviesť, či je pole povinné alebo nie, je dobrý nápad.

V registračnom formulári Zappos.com sú povinné polia označené hviezdičkou (*). Nepovinné polia sú tiež jasne označené.

2. Používajte jasné a podrobné chybové hlásenia

Som si istý, že neznášate, keď sa pri nesprávnom vyplnení formulára zobrazí chybové hlásenie „Musíte vyplniť všetky povinné polia“ namiesto poskytnutia podrobnejších informácií, ako napríklad „Zabudli ste vyplniť svoju e-mailovú adresu .“
Dobrým riešením je overenie zadaných údajov v reálnom čase. Napríklad hneď po vyplnení e-mailovej adresy by webový formulár mal skontrolovať správnosť zadaného formátu a ak niečo nie je v poriadku, okamžite upozorniť používateľa.

3. Použite overenie formátu údajov na strane klienta (JavaScript)

Použitie validácie údajov JavaScriptu šetrí čas používateľa a tiež znižuje zaťaženie webového servera, čím ho oslobodzuje od spracovania prichádzajúcich hodnôt polí formulára. Overenie na strane klienta umožňuje používateľom vidieť, že práve urobili chybu, a nie až po odoslaní formulára. To platí pre všetky polia, ktoré nie sú prepojené s vašou databázou. Ako je kontrola formátu e-mailovej adresy alebo počtu číslic v telefónnom čísle.

Registračný formulár SurveyGizmo vás upozorní, ak zadaná e-mailová adresa nie je v správnom formáte.

4. Vizuálne zvýraznite polia, ktoré treba vyplniť, aby sa používateľ nestratil

Uistite sa, že môžete vizuálne určiť, ktoré pole používateľ práve vypĺňa. Dá sa to dosiahnuť pomocou focus: selektor pseudotriedy v CSS.

Webový formulár Wufoo vizuálne zvýrazňuje aktívne prvky farbou pozadia.
Minimálne implementujte zvýraznené orámovanie polí – prehliadače to urobia štandardne za vás, ale uistite sa, že farba je odlišná od dizajnu stránky (pozadia).

Google Chrome zvýrazní aktívny prvok žltým rámom. Firefox svetlo modrá.

5. Ukážte výsledky postupu

Ak je váš webový formulár veľký a pozostáva z niekoľkých stránok (alebo má niekoľko krokov), uistite sa, že používateľ je neustále informovaný o priebehu vykonávaných akcií a o tom, koľko času môže ešte potrebovať na dokončenie. Toto sa často vyskytuje v prípadoch online prieskumu (výskumu) s mnohými otázkami alebo počas procesu zadávania objednávky v internetovom obchode.
Všetko, čo musíte urobiť, je napísať „Krok 4 z 5“ alebo niečo podobné. Ak používatelia budú klikať na tlačidlo „pokračovať“ bez toho, aby jasne pochopili, kedy bude posledný krok, prestanú formulár vypĺňať skôr, ako by ste čakali.

Pokladňa na Amazone má 4 strany. Formulár vám povie, kde sa práve nachádzate a koľko času zostáva do dokončenia.
Samozrejme, lepšou alternatívou by bolo skrátenie vášho webového formulára – ak to nie je možné, dajte používateľovi aspoň informáciu o tom, ako blízko je k dokončeniu vykonávaných akcií.

6. Pravidelne ukladajte údaje formulára (do vyrovnávacej pamäte).

Formuláre s viacerými stranami alebo krokmi môžu často robiť chyby. Aby ste predišli strate údajov, musíte implementovať spôsob ukladania informácií zadaných používateľom pre každú reláciu. Zvyšuje sa tak spoľahlivosť a percento, že sa formulár vyplní aj po situáciách, keď používateľ opustí stránku (napríklad klikne na tlačidlo späť v prehliadači). Opätovné vyplnenie všetkých polí formulára môže spôsobiť odchod používateľov.

7. Nepoužívajte štandardný text „Odoslať“ (odoslať)

Namiesto tlačidla s názvom „Odoslať“ použite text, ktorý používateľovi pripomína jeho akcie. Napríklad „Registrovať sa“, alebo ešte lepšie, informovať používateľa o výhodách po vyplnení formulára.

V registračnom formulári Basecamp bol text „Odoslať“ nahradený niečím užitočnejším.

8. Tlačidlo „Zrušiť“ vás prinúti zaváhať

Predstavte si, že si v obchode kupujete novú košeľu a predavač sa vás opýta: „Naozaj chcete túto konkrétnu košeľu? Ešte si ho kúpiš? S najväčšou pravdepodobnosťou nie. Môžete mať pochybnosti, pretože si myslíte, že predajca považoval košeľu za nevhodnú.
To isté sa deje s webovými formulármi: pomocou tlačidla „zrušiť“ môžu vaši používatelia dvakrát premýšľať o tom, čo vypĺňajú.

9. Zobrazte používateľom polia v správnom formáte

Ak sa používateľov spýtate na konkrétne informácie – napríklad telefónne číslo alebo kreditnú kartu – dajte im vedieť, čo očakávate. Ak heslo musí mať určitý počet znakov alebo musí obsahovať určitú sadu znakov, jasne opíšte tieto požiadavky. To znižuje nejednoznačnosť a urýchľuje proces plnenia.

Registračný formulár Geico poskytuje jasné pokyny, v akom formáte sa očakáva vstupné údaje.

10. Jednostĺpcový formulár je najlepším riešením

Podľa výskumu pohybu očí od agentúry cxpartners pre dizajn používateľských skúseností je skenovanie formulára smerom nadol vhodnejšie ako skenovanie zľava doprava. Tým sa zníži množstvo pohybu očí potrebné na dokončenie formulára.
Jednostĺpcový formulár
Registračný formulár batohu je jednostĺpcový.
Formulár s viacerými stĺpcami

Vo svete vývoja softvéru existuje veľa mýtov a mylných predstáv. Aby sme napredovali a nestagnovali, je absolútne nevyhnutné ich zničiť. Dnes hovoríme o jednej z najhlbšie zakorenených mylných predstáv, ktorá je tiež dosť škodlivá, s názvom „Mýtus o povinnom sexe“.

Budeme hovoriť o takmer akomkoľvek systéme, ktorý používa formuláre na zadávanie informácií. Povinné pole je pole formulára, bez ktorého systém neprijme vaše informácie. Medzi veľkou väčšinou vývojárov softvéru existuje názor, že požadované polia by mali byť:

  1. Všetky polia potrebné z hľadiska subjektu (napríklad celé meno a dátum narodenia osoby, ak hovoríme o pasovom úrade);
  2. Všetky polia potrebné na fungovanie systému (tie, bez ktorých algoritmy nebudú fungovať - ​​napríklad dátum, od ktorého sa služby začínajú poskytovať, aby sa im mohli časovo rozlíšiť);
  3. Dôležité polia sú tie, ktoré nie sú potrebné, ale prednostne vyplniť (napríklad zdôvodnenie vykonávanej zmeny) – s motiváciou, že je lepšie, aby sa používateľ zapotil, keď to nie je potrebné, ako keď je to potrebné, aby zabudol zadať hodnotu.
Ako vidíte, existuje tu celý komplex mýtov, ktoré treba opatrne a systematicky búrať. Začnime teda ďalšími dvoma mylnými predstavami.

Programátori tradične veria, že robia zvyšku sveta láskavosť tým, že pre nich vytvoria taký skvelý produkt, akým je „náhrada akéhokoľvek názvu produktu“. Ich program je takmer platónskym eidos, čistou abstrakciou, matematickým vzorcom, vypočítateľným, samozrejme, striktne na súbore parametrov zo svojej definičnej oblasti. Z tohto pohľadu sú povinné polia nepríjemnou maličkosťou, ktorú treba vkladať, aby sme naučili hlúpych a neslušných používateľov Správny zadávať informácie do systému, s ktorým majú oprávnenie pracovať.

Tiež sa verí, že nesprávne (neúplné) údaje sú také hrozné, že ani ich uloženie do databázy už nie je správne. No, lenivosť, samozrejme - z pohľadu vývojára je jednoduchšie skontrolovať správnosť údajov vo vstupnej fáze a poslať používateľa na dvojitú kontrolu svojich údajov, ako písať spracovanie chýb, kde sa tieto údaje skutočne použijú v systéme.

Čo na to hovorí moderná veda o dizajne používateľských skúseností? Po prvé, bolo jasné (neviem komu a kedy, ale už dávno určite, pozri a), že programy sa predsa vyvíjajú pre používateľov. V tomto zmysle už programátor nediktuje podmienky, ale skromne vytvára čisto utilitárny produkt, nástroj, ktorý ľudia použijú na riešenie ichúlohy a úspechy ich Ciele. Ako žehlička – ak potrebujete niečo vyžehliť, zapnete to. Ak namiesto žehlenia modálne ponúka sťahovanie aktualizácií z internetu, je jasné, kam takáto žehlička poletí. Alan Cooper odporúča zobrazovať používateľov vášho produktu ako veľmi šikovných, ale veľmi zaneprázdnených ľudí. Hovoria, že nie sú hlúpi a pochopia, ako používať váš produkt, hlavná vec je, že im jednoducho nebudete stáť v ceste.

Vo všeobecnosti sa domnievam, že každý programátor (dizajnér, manažér, analytik) by mal robiť meditáciu, ktorú spomínal Sergej Bodrov ml.:

Stojíte na rohu rušnej ulice a predstavujete si, že tam nie ste. Alebo skôr vôbec neexistujete. Chodci chodia, autá trúbia, otvárajú sa dvere obchodov, cestujúci sa prezliekajú na zastávke. To znamená, že svet v zásade naďalej žije bez vás. Toto je bolestivé pochopiť. Ale je dôležité...
Samozrejme, nechcem povedať, že byť programátorom je zbytočné povolanie, sám som programátor a vôbec si to nemyslím. Je to len nevďačné povolanie. Nikto vás nepríde pochváliť za dobre implementovaný algoritmus. Ak je program dobrý, použije sa bez ďalších otázok. Tak to má byť, len aby ste boli programátor, musíte si na to zvyknúť. A títo ľudia, ktorí chodia po ulici a striedajú sa na autobusovej zastávke, sú vašimi používateľmi. Používajú veci tak, ako ich používajú ich potrebné. Vrátane vášho produktu. Bez teba. Nič o vás nevedia, nechcú vedieť a nikdy sa to nedozvedia. Sergeja Vitalieviča, keď je v polárnej tundre a snaží sa zadať hodnoty namerané z meracieho prístroja do systému, sa vôbec nezaujíma o to, prečo mu systém hovorí, že najprv musíte uviesť nejaký typ tarifikácie, aj keď v tom čase dizajnu sa vám zdalo, že bez tarifikačného typu sa to nedá obísť. Pokiaľ ide o príklad o sťahovaní aktualizácií železa, nebol prevzatý z ničoho - venujte pozornosť tomu, ako sa prehliadač Firefox správa po zapnutí.

Bude tam vôbec niečo o povinných poliach, pýta sa Habrowser? Už sa to začína.

Ide o to, že náš skutočný svet nie je matematický model, ktorého parametre sú kedykoľvek známe. Skutočný život je charakterizovaný skôr nedostatkom informácií ako ich prítomnosťou. Osoba, ktorá vypĺňa formulár, nemusí mať požadované údaje - a nemusí ich mať vo všetkých predvídateľných hraniciach dosahu, to znamená, že nakoniec nemusí existovať. Tento problém sa nedá vyriešiť jednoduchým nastavením poľa ako povinného - hodnota nebude vytiahnutá z ničoho. Zavedením povinných polí do formulárov z dôvodu integrity a úplnosti údajov skutočne zasahujeme do používania systému. Používateľ v takejto situácii buď nevyplní formulár (a už vôbec nebude môcť so systémom pracovať), alebo doplní chýbajúce údaje rybami – fiktívnymi alebo nezmyselnými údajmi. A to neznamená, že používateľ je zlý alebo sa veľmi nesnažil, ale iba to, že vyvinutý systém nie je dostatočne flexibilný na použitie v podmienkach reálny mier. To, čo sa stalo v druhom prípade (predstavenie rýb), je totálny podvod. Vývojár systému sa môže tváriť, koľko chce, že je všetko v poriadku, no v skutočnosti je to on, kto môže za tento podvod. Navyše nie je jasné, kto vyhral a čo - používateľa bolela hlava a do systému vstúpili nesprávne údaje. Áno, dostali sa do takej situácie, že ich už nie je možné automaticky detekovať, filtrovať ani čistiť – na rozdiel od prípadu, keď používateľ jednoducho naznačil, že informácia chýba.

Čo robiť? Musíte robiť dobré programy. Totiž, áno, nedávajte do popredia integritu databázovej schémy, ale dajte tam ciele a zámery používateľov. Inými slovami, akceptovanie neúplných a v niektorých prípadoch nesprávnych údajov od používateľa, samozrejme, s možnosťou ich v budúcnosti opraviť. Na rozdiel od mylnej predstavy (áno, inej) je to možné, nie je to také ťažké a dokonca to funguje. Okrem toho treba stále nejako pomôcť, povedať používateľovi, kde, aké údaje a prečo mu chýbajú. Aby mohol vidieť a kontrolovať situáciu.

Koľko povinných polí by malo byť vo formulári? V ideálnom prípade nula. Je to vždy možné? Pre mňa je jedným z príkladov leteckej akrobacie operácia vytvorenia priečinka vo Windows. Zdalo by sa, že menej ako jedno pole tu neurobíte, ale nie, vytvorenie sa im podarilo implementovať tak, že systém sa na nič nepýta - aj keď technické obmedzenia neumožňujú systému vytvoriť priečinok bez mena. Toto je ideál, o ktorý sa treba snažiť.

Prirodzene, systém by mal byť minimálne inteligentný a pýtať sa používateľa len na to, čo je relevantné pre jeho úlohy, a nie pre potreby samotného systému. Systém je ako nástroj, pamätáte? Len o príklade s Firefoxom – Google Chrome napríklad vyriešil problém Firefoxu tak, že sa potichu aktualizoval v momente, keď ho používateľ reštartuje. Používateľ o tom vôbec nemusí vedieť – nevie. Príklad hodný nasledovania. Musím priznať, že som spočiatku ani nerozumel, prečo sa ma nikdy nespýtal, kedy by mal aktualizovať?

Vznikol tiež mýtus o dôležitých poliach (to sú tie, ktoré sú nepovinné, ale je žiaduce ich vyplniť). Tu je všetko ešte jednoduchšie - nemôžete prinútiť vyplniť pole. Preto aj keď pole označíte ako povinné, alebo ho neoznačíte, stále budú písať ryby, nezmysly, odhlasovať sa, ak ho nechcú vypĺňať. Pre tento problém neexistuje žiadne riešenie rozhrania. O dôležitosti polí treba informovať terénnych pracovníkov. A vývojár by mal označiť pole ako voliteľné. A dovoľte mi upraviť.

Literatúra:

  1. Alan Cooper o rozhraní. Základy interakčného dizajnu. Symbol-Plus, 2009
  2. Jeff Raskin. Rozhranie: nové smery v navrhovaní počítačových systémov. Symbol-Plus, 2005

UPD: V komentároch bola hlavná morálka témy formulovaná jasnejšie: hovoríme o systéme draftov, o odstránení požiadavky zadávať všetky údaje naraz a dôsledne. To znamená, že áno, urobte voliteľné aj tie polia, bez ktorých systém nebude fungovať. Prirodzene to nebude fungovať, ale aspoň to zachráni dáta.

UPD #2: Dovoľte mi objasniť ešte jednu vec, ktorú som si sám pri písaní témy jasne neuvedomoval. Nehovorím tu o vhodnosti určitých polí vo formulári (toto je dôležitá, ale predsa len trochu iná téma, než ktorú chcem sprostredkovať). Skôr navrhujem prehodnotiť samotný koncept zadávania informácií pomocou formulárov, teda tradičný prístup, keď potrebujete vyplniť celý formulár naraz a správne. Namiesto toho navrhujem, aby sa do databázy mohol uložiť aj medzistav (neúplný, nesprávny, protirečivý), výslovne označiť takýto stav za neúplný/nesprávny/nekonzistentný. Všetky situácie „teraz neviem všetko, ale možno zajtra budem“, ktoré sa tradične riešia napísaním na papier, sa dajú spracovať pomocou informačného systému. Prirodzene, takéto údaje by nemali byť vpustené do obchodného procesu kvôli ich nesprávnosti - všetko zostáva ako predtým. Jednoducho budú ležať v databáze až do lepších časov - nebudú užitočné, no, Boh im žehnaj.

Maximum informácií v minime slov.

Spôsob, akým sú polia označené, výrazne ovplyvňuje to, ako používatelia vnímajú formulár a ako ho vypĺňajú.

Z psychologického hľadiska je všetko celkom jednoduché: poukázať na pozitívne aspekty je lepšie, pretože pri rozhodovaní sa používateľ verí, že má na výber.

Na druhej strane, ak zadáte povinné polia, používateľ sa bude cítiť uväznený, obmedzený a nepohodlný.

Označte voliteľné polia, nie naopak

Väčšina návrhárov používa hviezdičky na označenie povinných polí. Ale musíte to prestať robiť. Výskum v tejto oblasti jasne ukazuje, že používanie hviezdičiek pre povinné polia je bežnou chybou.

Je lepšie označiť voliteľné polia ako povinné polia, pretože:

  • Hviezdička je vám zrejmá a nie každému, verte, že vždy sa nájdu takí, ktorí nerozumejú
  • Vždy je viac povinných polí ako nepovinných
  • Čím menej vizuálneho šumu má váš formulár, tým je čitateľnejší, a teda rýchlejšie sa vypĺňa.

nie požadovaný vs Voliteľné

Ak píšete text v angličtine, nezabudnite, že zápory sú vo všetkých prípadoch menej jasné. Preto na popis voliteľných polí použite slovo „Voliteľné“ namiesto „Nevyžaduje sa“.

Nežiadajte používateľov, aby poskytovali zbytočné informácie. Ak máte priveľa políčok navyše (nepovinných), je to zlé a vy to viete. Ani vy, ani ja nemáme radi tvary roliek toaletného papiera.

HTML formuláre sú ovládacie prvky, ktoré sa používajú na zhromažďovanie informácií od návštevníkov webových stránok.

Webové formuláre pozostávajú z kolekcie textových polí, tlačidiel, zoznamov a iných ovládacích prvkov, ktoré sa aktivujú kliknutím myši. Z technického hľadiska formuláre prenášajú údaje od používateľa na vzdialený server.

Na príjem a spracovanie údajov z formulárov slúžia webové programovacie jazyky ako napr PHP, Perl.

Pred príchodom HTML5 boli webové formuláre súborom niekoľkých prvkov , končiace tlačidlom . Štylizácia formulárov v rôznych prehliadačoch si vyžiadala veľa úsilia. Okrem toho formuláre vyžadovali JavaScript na overenie vstupu a chýbali im špecifické typy vstupných polí na špecifikovanie každodenných informácií, ako sú dátumy, e-mailové adresy a adresy URL.

HTML5 formuláre vyriešil väčšinu týchto bežných problémov prítomnosťou nových atribútov, ktoré poskytujú možnosť meniť vzhľad prvkov formulára CSS3.

Ryža. 1. Vylepšené webové formuláre s HTML5

Vytvorenie formulára HTML5

1. Prvok

Základom každej formy je prvok .... Nevyžaduje žiadny vstup, pretože je to kontajner, ktorý drží všetky ovládacie prvky formulára pohromade - poliach. Atribúty tohto prvku obsahujú informácie, ktoré sú spoločné pre všetky polia formulára, takže polia, ktoré sa logicky kombinujú, musia byť zahrnuté v jednom formulári.

Tabuľka 1. Atribúty značiek
Atribút Význam/Popis
prijať-charset Hodnota atribútu je oddelená medzerou zoznam kódovaní znakov, ktorý sa použije na odoslanie formulára, napr. .
akcie Povinný atribút, ktorý určuje adresu URL obslužného programu formulára na serveri, na ktorý sa odosielajú údaje. Je to súbor (napríklad action.php), ktorý popisuje, čo je potrebné urobiť s údajmi formulára. Ak nie je zadaná hodnota atribútu, potom po opätovnom načítaní stránky nadobudnú prvky formulára predvolené hodnoty.
Ak sa všetka práca bude vykonávať na strane klienta pomocou skriptov JavaScript, potom môžete zadať hodnotu # pre atribút action.
Môžete si tiež dohodnúť zaslanie formulára vyplneného návštevníkom e-mailom. Ak to chcete urobiť, musíte zadať nasledujúci záznam:
automatické dopĺňanie

enctype Používa sa na označenie MIME-typ údajov odoslaných spolu s formulárom, napríklad enctype="multipart/form-data" . Určené len v prípade method="post" .
application/x-www-form-urlencoded je predvolený typ obsahu, čo znamená, že odovzdané údaje predstavujú zoznam premenných formulára zakódovaných v URL. Medzery (ASCII 32) budú zakódované ako + a špeciálne znaky, ako napríklad ! bude zakódované v šestnástkovej sústave ako %21 .
multipart/form-data – slúži na odosielanie formulárov obsahujúcich súbory, non-ASCII dáta a binárne dáta, pozostáva z niekoľkých častí, z ktorých každá predstavuje obsah samostatného formulárového prvku.
text/plain – označuje, že sa prenáša obyčajný (nie html) text.
metóda Určuje spôsob odosielania údajov formulára.
Metóda get prenáša údaje na server cez panel s adresou prehliadača. Pri generovaní požiadavky na server tvoria všetky premenné a ich hodnoty sekvenciu ako www.anysite.ru/form.php?var1=1&var2=2 . Sú názvy a hodnoty premenných pripojené k adrese servera za znakom? a sú oddelené znakom &. Všetky špeciálne znaky a písmená, ktoré nie sú latinkou, sú zakódované vo formáte %nn, medzera je nahradená znakom +. Táto metóda by sa mala použiť, ak neprenášate veľké množstvo informácií. Ak máte spolu s formulárom odoslať aj súbor, táto metóda nebude fungovať.
Metóda post sa používa na odosielanie veľkého množstva údajov, ako aj dôverných informácií a hesiel. Údaje odoslané pomocou tejto metódy nie sú viditeľné v hlavičke URL, pretože sú obsiahnuté v tele správy.
názov Súpravy názov formulára, ktorý sa použije na prístup k prvkom formulára prostredníctvom skriptov, ako napríklad name="opros" .
novalidovať Zakáže overenie v tlačidle odoslania formulára. Atribút sa používa bez zadania hodnoty
cieľ Určuje okno, do ktorého sa budú odosielať informácie:
_blank - nové okno
_self - rovnaký rám
_parent — nadradený rámec (ak existuje, ak nie, potom do aktuálneho)
_top je okno najvyššej úrovne vzhľadom na tento rámec. Ak hovor neprichádza z detského rámca, potom do rovnakého rámca.

2. Zoskupovanie prvkov formulára

Element

...
navrhnuté tak, aby zoskupovali prvky, ktoré spolu súvisia, čím sa forma rozdeľuje na logické fragmenty.

Každá skupina prvkov môže byť pomenovaná pomocou prvku , ktorý nasleduje hneď za značkou

. Názov skupiny sa zobrazí v ľavom hornom okraji
. Napríklad, ak v prvku
Kontaktné informácie sú uložené:

Kontaktné informácie


Ryža. 2. Zoskupovanie prvkov formulára pomocou

Tabuľka 2. Atribúty značiek
Atribút Význam/Popis
zdravotne postihnutých Ak je atribút prítomný, ide o skupinu súvisiacich prvkov formulára umiestnených vo vnútri kontajnera
, vypnuté pre vyplnenie a úpravu. Používa sa na obmedzenie prístupu k určitým poliam formulára, ktoré obsahujú predtým zadané údaje. Atribút sa používa bez určenia hodnoty -
.
formulár
v tom istom dokumente. Označuje jednu alebo viac foriem, ku ktorým patrí táto skupina prvkov. Tento atribút momentálne nepodporuje žiadny prehliadač.
názov Definuje názov, ktorý sa použije na odkazovanie na prvky v JavaScripte alebo na odkazovanie na údaje formulára po vyplnení a odoslaní formulára. Je analogický s atribútom id.

3. Vytvorte polia formulára

Element vytvára väčšinu polí formulára. Atribúty prvku sa líšia v závislosti od typu poľa, na vytvorenie ktorého sa prvok používa.

Pomocou štýlov CSS môžete zmeniť veľkosť písma, typ písma, farbu a ďalšie vlastnosti textu, ako aj pridať okraje, farbu pozadia a obrázok na pozadí. Šírka poľa je určená vlastnosťou width.

Tabuľka 3. Atribúty značiek
Atribút Význam/Popis
súhlasiť Určuje typ súboru, ktorý sa má odoslať na server. Určené len pre . Možné hodnoty:
file_extension - umožňuje sťahovanie súborov so zadanou príponou, napríklad accept=".gif" , accept=".pdf" , accept=".doc"
audio/* – umožňuje sťahovanie zvukových súborov
video/* - umožňuje sťahovanie videosúborov
image/* - umožňuje načítanie obrázkov
media_type – označuje typ média sťahovaných súborov.
alt Definuje alternatívny text pre obrázky, uvedené len pre .
automatické dopĺňanie Zodpovedný za zapamätanie hodnôt zadaných do textového poľa a ich automatické nahradenie pri ďalšom zadávaní:
on - znamená, že pole nie je chránené a jeho hodnotu možno uložiť a získať,
vypnuté – zakáže automatické dopĺňanie polí formulára.
automatické zaostrovanie Umožňuje vám uistiť sa, že v načítanom formulári je jedno alebo druhé vstupné pole už aktívne (bolo vybraté) a je pripravené na zadanie hodnoty.
skontrolované Atribút kontroluje, či je pri načítaní stránky začiarknuté predvolené začiarkavacie políčko pre polia ako type="checkbox" a type="radio" .
zdravotne postihnutých
formulár Hodnota atribútu sa musí rovnať atribútu id prvku v tom istom dokumente. Identifikuje jeden alebo viac formulárov, ku ktorým toto pole formulára patrí.
formácia Určuje adresu URL súboru, ktorý spracuje údaje zadané do polí pri odosielaní formulára. Nastaviť len pre polia type="submit" a type="image" . Atribút prepíše hodnotu atribútu action samotného formulára.
formanctype Určuje, ako budú údaje poľa formulára zakódované pri odoslaní na server. Prepíše hodnotu atribútu enctype formulára. Nastaviť len pre polia type="submit" a type="image" . Možnosti:
application/-x-www-form-urlencoded je predvolená hodnota. Všetky znaky sú pred odoslaním zakódované (medzery sú nahradené znakom +, špeciálne znaky sú konvertované na ASCII HEX hodnoty)
multipart/form-data - znaky nie sú kódované
text/plain - medzery sú nahradené symbolom + a špeciálne znaky nie sú kódované.
formová metóda Atribút určuje metódu, ktorú prehliadač použije na odoslanie údajov formulára na server. Nastaviť len pre polia type="submit" a type="image" . Prepíše hodnotu atribútu metódy formulára. Možnosti:
get je predvolená hodnota. Údaje z formulára (pár názov/hodnota) sa pridajú do adresy URL a odošlú sa na server: URL?názov=hodnota&názov=hodnota
údaje post - formulára sa odosielajú ako http žiadosť.
formnovalidate Určuje, že údaje poľa formulára by sa pri odoslaní formulára nemali overovať. Prepíše hodnotu atribútu novalidate formulára. Možno použiť bez zadania hodnoty atribútu.
formtarget Určuje, kde sa má zobraziť odpoveď prijatá po odoslaní formulára. Nastaviť len pre polia type="submit" a type="image" . Prepíše hodnotu cieľového atribútu formulára.


_parent – ​​načíta odpoveď do nadradeného rámca
_top – načíta odpoveď na celú obrazovku
framename – načíta odpoveď do rámca so zadaným názvom.
výška Hodnota atribútu obsahuje počet pixelov bez určenia mernej jednotky. Nastavuje výšku poľa formulára typu type="image" , napr. . Odporúča sa nastaviť výšku aj šírku poľa súčasne.
zoznam Je odkaz na prvok , obsahuje svoje id . Umožňuje používateľovi poskytnúť niekoľko možností na výber, keď začne zadávať hodnotu do príslušného poľa.
max Umožňuje obmedziť povolený vstup číselných údajov na maximálnu hodnotu, pričom hodnota atribútu môže obsahovať celé číslo alebo zlomkové číslo. Tento atribút sa odporúča používať v spojení s atribútom min. Pracuje s nasledujúcimi typmi polí: číslo, rozsah, dátum, dátum a čas, dátum a čas-miestne, mesiac, čas a týždeň.
maximálna dĺžka Atribút určuje maximálny počet znakov zadaných do poľa. Predvolená hodnota je 524288 znakov.
min Umožňuje obmedziť povolený číselný vstup na minimálnu hodnotu.
viacnásobné Umožňuje používateľovi zadať viacero hodnôt atribútov oddelených čiarkou. Vzťahuje sa na súbory a e-mailové adresy. Zadané bez hodnoty atribútu.
názov Určuje názov, ktorý sa použije na prístup k prvku , napríklad v šablónach so štýlmi css. Je analogický s atribútom id.
vzor Umožňuje určiť použitie regulárny výraz syntax údajov, ktorých zadávanie do konkrétneho poľa musí byť povolené. Napríklad vzor="(3)-(3)" - hranaté zátvorky nastavujú rozsah prijateľných znakov, v tomto prípade - akékoľvek malé písmená, číslo v zložených zátvorkách znamená, že sú potrebné tri malé písmená, za ktorými nasleduje pomlčka, potom tri číslice v rozsahu od 0 do 9.
zástupný symbol Obsahuje text, ktorý sa zobrazuje vo vstupnom poli pred jeho vyplnením (najčastejšie ide o popis).
iba na čítanie Nedovoľuje používateľovi meniť hodnoty prvkov formulára, výber a kopírovanie textu je stále k dispozícii. Zadané bez hodnoty atribútu.
požadovaný Zobrazí správu, že toto pole je povinné. Ak sa používateľ pokúsi odoslať formulár bez zadania požadovanej hodnoty do tohto poľa, na obrazovke sa zobrazí varovné hlásenie. Zadané bez hodnoty atribútu.
veľkosť Nastavuje viditeľnú šírku poľa v znakoch. Predvolená hodnota je 20. Funguje s nasledujúcimi typmi polí: text, vyhľadávanie, tel, adresa URL, e-mail a heslo.
src Určuje adresu URL obrázka použitého ako tlačidlo na odoslanie formulára. Uvádza sa len pre pole .
krok Používa sa pre prvky, ktoré vyžadujú zadanie číselných hodnôt, označuje množstvo, o ktoré sa hodnoty zvýšia alebo znížia počas procesu úpravy rozsahu (kroku).
typu button - vytvorí tlačidlo.
checkbox - zmení vstupné pole na zaškrtávacie políčko, ktoré je možné zaškrtnúť alebo zrušiť, napr.
mám auto
farba – generuje farebné palety v podporných prehliadačoch, čo používateľom umožňuje vybrať hodnoty farieb v hexadecimálnom formáte.
dátum — umožňuje vám zadať dátum vo formáte dd.mm.rrrr.
narodeniny:
datetime-local - umožňuje zadať dátum a čas oddelené veľkým anglickým písmenom T pomocou vzoru dd.mm.yyyy hh:mm.
Narodeniny - deň a čas:
email – Prehliadače, ktoré podporujú tento atribút, budú očakávať, že používateľ zadá údaje, ktoré sa zhodujú so syntaxou e-mailových adries.
Email:
súbor - umožňuje sťahovať súbory z počítača používateľa.
Vyberte súbor:
skrytý - Skryje ovládací prvok, ktorý prehliadač nezobrazuje a bráni používateľovi zmeniť predvolené hodnoty.
obrázok - vytvorí tlačidlo, ktoré vám umožní vložiť obrázok namiesto textu na tlačidlo.
mesiac – umožňuje používateľovi zadať číslo roka a mesiaca pomocou vzoru rrrr-mm.
číslo - určené na zadávanie celočíselných hodnôt. Jeho atribúty min , max a step špecifikujú hornú, dolnú hranicu a krok medzi hodnotami. Tieto atribúty sa predpokladajú pre všetky prvky, ktoré majú číselné ukazovatele. Ich predvolené hodnoty závisia od typu prvku.
Uveďte množstvo (od 1 do 5):
heslo - vytvára textové polia vo formulári, pričom znaky zadané používateľom sú nahradené hviezdičkami, odrážkami alebo inými ikonami nainštalovanými prehliadačom.
Zadajte heslo:
rádio - vytvára spínač - ovládanie v podobe malého kruhu, ktorý je možné zapnúť alebo vypnúť.
vegetarián:
rozsah - umožní vám vytvoriť prvok rozhrania, ako je posuvník, min / max - umožní vám nastaviť rozsah výberu
reset - vytvorí tlačidlo, ktoré vymaže polia formulára od údajov zadaných používateľom.
hľadať – označuje vyhľadávacie pole, štandardne má vstupné pole obdĺžnikový tvar.
Vyhľadávanie:
odoslať - vytvorí štandardné tlačidlo, ktoré sa aktivuje kliknutím myši. Tlačidlo zhromažďuje informácie z formulára a odošle ich na spracovanie.
text – vytvára textové polia vo formulári, pričom výstupom je jednoriadkové textové pole na zadávanie textu.
čas - umožňuje zadávať čas v 24-hodinovom formáte pomocou vzoru hh:mm. V podporných prehliadačoch sa zobrazuje ako ovládací prvok číselného vstupného poľa s hodnotou upraviteľnou myšou a umožňuje zadávať iba časové hodnoty.
Uveďte čas:
url—pole je určené na zadávanie adries URL.
Domovská stránka:
týždeň - Zodpovedajúci nástroj ukazovateľa umožňuje používateľovi vybrať jeden týždeň v roku, po ktorom bude poskytovať zadávanie údajov vo formáte nn-rrrr. V závislosti od roku môže byť počet týždňov 52 alebo 53.
Uveďte týždeň:
hodnotu Určuje text, ktorý sa zobrazí na tlačidle, poli alebo pridruženom texte. Nešpecifikované pre polia typu súbor.
šírka Hodnota atribútu obsahuje počet pixelov. Umožňuje vám nastaviť šírku polí formulára.

4. Polia na zadávanie textu

Element používa sa namiesto prvku keď potrebujete vytvoriť veľké textové polia. Text zobrazený ako pôvodná hodnota je umiestnený vo vnútri značky. Rozmery poľa sa nastavujú pomocou atribútov cols - horizontálne rozmery, riadky - vertikálne rozmery. Výšku poľa je možné nastaviť pomocou vlastnosti height. Všetky veľkosti sú vypočítané na základe veľkosti jedného znaku v jednopriestorovom písme.

Tabuľka 4. Atribúty značiek

7. Gombíky

Element vytvára klikacie tlačidlá. Na rozdiel od vytvorených tlačidiel ( , , , ), vo vnútri prvku .

Tlačidlá umožňujú používateľom odoslať údaje do formulára, vymazať obsah formulára alebo vykonať inú akciu. Môžete vytvoriť okraje, zmeniť pozadie a zarovnať text na tlačidle.

Tabuľka 9. Atribúty značiek
Atribút Význam/Popis
automatické zaostrovanie Nastaví zameranie na tlačidlo pri načítaní stránky.
zdravotne postihnutých Deaktivuje tlačidlo, takže naň nebude možné kliknúť.
formulár Označuje jeden alebo viac formulárov, ku ktorým toto tlačidlo patrí. Hodnota atribútu je identifikátor zodpovedajúceho formulára.
formácia Hodnota atribútu obsahuje adresu URL obslužného programu údajov formulára odoslaného po kliknutí na tlačidlo. Iba pre tlačidlo typu type="submit" . Prepíše hodnotu atribútu action zadaného pre prvok .
formanctype Nastaví typ kódovania údajov formulára pred ich odoslaním na server, keď sa klikne na tlačidlá ako type="submit". Prepíše hodnotu atribútu enctype špecifikovaného pre prvok . Možné hodnoty:
application/x-www-form-urlencoded je predvolená hodnota. Všetky znaky budú pred odoslaním zakódované.
multipart/form-data - znaky nie sú kódované. Používa sa pri nahrávaní súborov pomocou formulára.
text/plain - znaky nie sú zakódované a medzery sú nahradené symbolom +.
formová metóda Atribút určuje metódu, ktorú prehliadač použije na odoslanie formulára. Prepíše hodnotu atribútu metódy zadaného pre prvok . Určené len pre tlačidlá typu type="submit". Možné hodnoty:
get - údaje z formulára (pár meno/hodnota) sú pridané do url a odoslané na server. Táto metóda má obmedzenia týkajúce sa veľkosti odosielaných údajov a nie je vhodná na odosielanie hesiel a dôverných informácií.
príspevok - údaje z formulára sú pridané ako http požiadavka. Metóda je spoľahlivejšia a bezpečnejšia ako získať a nemá žiadne obmedzenia veľkosti.
formnovalidate Tento atribút určuje, že údaje formulára by sa pri odoslaní nemali overovať. Určené len pre tlačidlá typu type="submit".
formtarget Atribút určuje, v ktorom okne sa má zobraziť výsledok po odoslaní formulára. Určené len pre tlačidlá typu type="submit". Prepíše hodnotu cieľového atribútu zadaného pre prvok .
_blank - načíta odpoveď do nového okna/záložky
_self - načíta odpoveď do rovnakého okna (predvolené)
_parent - načíta odpoveď do nadradeného rámca
_top - načíta odpoveď na celú obrazovku
framename - načíta odpoveď do rámca so zadaným názvom.
názov Nastavuje názov tlačidla, hodnota atribútu je text. Používa sa na prepojenie na údaje formulára po odoslaní formulára alebo na prepojenie na dané tlačidlo (tlačidlá) v JavaScripte.
typu Definuje typ tlačidla. Možné hodnoty:
tlačidlo – klikateľné tlačidlo
reset — tlačidlo reset, vráti pôvodnú hodnotu
odoslať - tlačidlo na odoslanie údajov formulára.
hodnotu Nastaví predvolenú hodnotu odoslanú po kliknutí na tlačidlo.

8. Začiarkavacie políčka a prepínače vo formulároch

Začiarkavacie políčka vo formulároch sa nastavujú pomocou konštrukcie , a prepínač - pomocou .

Začiarkavacie políčka, na rozdiel od prepínačov, môžu byť nastavené na niekoľko v jednom formulári. Ak je atribút začiarknutý pre začiarkavacie políčka, potom pri načítaní stránky budú začiarkavacie políčka v príslušných poliach formulára už vybraté.

Element

Takmer všetky moderné a nové stránky majú formuláre, ktorých vyplnenie sa bude kontrolovať bez opätovného načítania stránky. Takzvané povinné polia formulára. Aké metódy sa však používajú na vytváranie takýchto foriem?

Až donedávna bolo najpopulárnejším spôsobom používanie JavaScriptu. Veľmi pohodlnou knižnicou je validácia jquery. Táto metóda je moderná, no jej integrácia do formulára na webovej stránke si vyžaduje určité zručnosti a čas.

S príchodom html 5 a jeho rozšírená integrácia do moderných webových stránok, môžete odmietnuť používať javascript. Navyše, aby bolo pole vo formulári povinné, stačí ho pridať povinný atribút.

S požadovaným atribútom prehliadač pred odoslaním formulára skontroluje, či je konkrétne pole vyplnené alebo nie. Ak nie, používateľ dostane pokyn, aby vyplnil pole alebo dokonca všetky polia formulára.

A vytvorenie takýchto polí nezaberie viac ako minútu.

Povedzme teda, že existuje malá forma:





Registrácia















Takto to vyzerá v prehliadači:


Teraz robíme niektoré polia vo formulári povinnými:





Registrácia




požadovaný>



požadovaný>










To je všetko. Všetky polia sme urobili povinnými za menej ako 1 minútu. Ak nevyplníme povinné polia, zobrazia sa nám nasledujúce správy:

A čo je dôležité. Táto kontrola funguje vo všetkých moderných prehliadačoch a len pre špecifikáciu html 5 Pre neznalých je potrebné vložiť značku na začiatok html kódu.