it-swarm-eu.dev

Co má ENTER dělat?

Co by se mělo ve webovém formuláři stát, když uživatel stiskne klávesu ENTER?

Píšu registrační formulář - jméno, e-mail, heslo, registrační tlačítko: obvyklá věc. Protože používám JavaScript, a stránka nepoužívá <form...> tag, mám úplnou kontrolu nad tím, co se stane při každém stisknutí klávesy. Dokážu změnit zaměření, odeslat data na server, ověřit obsah pole, cokoli. Ale co mělo by to?

Věci, které mě zajímají: měl by ENTER přenést uživatele na další pole (podle klíče TAB)? Měli byste stisknout klávesu ENTER, zatímco je kladen důraz na poslední pole, odeslat formulář?

19
David

Enter by měl odeslat formulář. Tab by měl jít na další pole.

Uživatelé to obvykle neoceňují, když klávesnice nedělá to, co si myslí.

37
Jeff Sheldon

Předdefinovaným standardním prohlížečem je vždy zadání při zadání, proto se stal de facto standardem.

Člověk to obvykle zachytí a poté provede ověření. Pokud ověření selže, událost odeslání je zrušena a formulář není odeslán.

Kromě: Proč nepoužíváte značku <form>? Opravdu byste měli. Nebude to znemožňovat běh žádného javascriptu a je sémanticky lepší.

9
Steven Ringo

Na tuto otázku nelze odpovědět bez uživatelského testu. Proč? Protože to, co má Enter udělat, závisí na tom, kdo jsou vaši uživatelé. Podívejte se na odpovědi na tuto otázku doposud: nejvyšší hlasoval jeden návrhář interakce, který dává svůj názor na základě jeho odborných znalostí (což ho zaujalo, protože vše, co může říci, je to, co už viděl), a pak dalších 11 návrhářů zvýšilo svůj názor. to proto, že viděli podobné věci a souhlasí s tím.

Ale opravdu odpověď na otázku, musíte uživatel test. Pokud vaše publikum není tvořeno návrháři uživatelského rozhraní, kteří očekávají, že Enter odešle formulář, je těžké říct, co očekávají, aniž by měření očekávali. Nejlepší způsob, jak toho dosáhnout, je získat statisticky významný počet lidí z publika a zjistit, jak se chovají při použití různých návrhů formuláře.

2
Rahul

Jen názor od někoho, kdo nevyrostl s webem (je nás tam hodně a platíme za věci.). Klávesa Enter by měla zaúčtovat formulář, pouze pokud jsou vyplněna všechna požadovaná pole; jinak by mělo jít do dalšího pole.

Ve více jedinečných formulářích pro zadávání údajů bych nedoporučoval jít mimo to, co uživatelé očekávají, ale přihlašovací obrazovky jsou dost obecné, mají málo polí a neměly by způsobit přílišnou záměnu (existují pouze 3 pole).

Osobně to nenávidím, když jsem ze zvyku/nehody stiskl klávesu Enter a čekám na načtení formuláře.

2
JeffO

Moje heuristika je

  1. Pokud je formulář uživatelské jméno a heslo, zadejte odešle formulář.
  2. Pokud se nacházejí v posledním poli formuláře nebo jsou umístěny na tlačítku pro odeslání, zadejte odeslání formuláře
  3. Všechny ostatní zadané scénáře přejdou do dalšího pole.
2
Glen Lipka

Moje rada - nepotřebujete Enter.

Uživatelé nevědí, že Enter odešle formulář. Tuto funkci lze zjistit pouze experimentováním. Uživatelé nemají zkušenosti, mají strach z toho, že dělají něco špatného, ​​zejména ve formě.

Funkci Enter můžete bezpečně odebrat z dlouhých formulářů.

Ponechte jej tam ve velmi krátkých formách, jako je Přihlášení, kde jsou pokročilí uživatelé zvyklí na stisknutí klávesy Enter.

1
Miki