2010-12-31 14 views
6

Podczas korzystania z pól HTML5 "e-mail" - <input type="email"/> - wiele UA (agentów użytkownika/przeglądarek) uniemożliwia przesłanie formularza bez użycia "prawidłowego" adresu e-mail. Stosują również pseudoklasię :invalid. Jednak mój konflikt z własnym schematem sprawdzania poprawności oraz brak bezpośredniej informacji zwrotnej mogą wprowadzać użytkowników w błąd. Ponadto: nieprawidłowy jest stosowany (w Chrome 8) do mojego pola, zanim ktokolwiek nawet spróbuje go przesłać. Nienawidzę tego. Wygląda na to, że użytkownik popełnił błąd, ale jeszcze tego nie zrobił.Czy mogę pomijać sprawdzanie poprawności UA pól "e-mail" HTML5?

Czy można używać <input type="email"/> bez aktywowania zachowania sprawdzania poprawności?

+2

Nie brzmi sarkastycznie, ale nie jest to po prostu . Dlaczego chcesz używać tego typu, jeśli nie chcesz udostępniać funkcji dziedziczenia? – spinon

+3

@spinon Niezupełnie. UA mogą w inny sposób ulepszyć '" - Rozważ urządzenia iOS. W rzeczywistości używają zupełnie innej klawiatury, z kluczami "@" i "." Widocznymi tam, gdzie zwykle byłyby części spacji, gdy użytkownik wypełnia pole e-mail. –

+0

tak, myślałem o tym po tym, jak to napisałem. Jest taka funkcja, która czyni ją wygodną dla urządzeń. – spinon

Odpowiedz

10

Według Philipa Taylora (Philip) na irc.w3.org # html-WG pokoju IRC:

http://whatwg.org/html5#attr-fs-novalidate mówi można użyć, aby wyłączyć sprawdzanie poprawności dla całej postaci

So zasadniczo można zastosować novalidate jako atrybut w całym formularzu. Możesz także określić przycisk przesyłania, aby przesłać formularz bez sprawdzania poprawności - przykładem kanonicznym jest przycisk "Zapisz postęp", który w ogóle nie jest sprawdzany. W takim przypadku umieść formnovalidate na samym przycisku przesyłania.

+3

Przynajmniej w Firefoksie formnovalidate zapobiega ostrzeżeniu o dymku, ale nadal dodaje czerwony błąd sprawdzania poprawności "blask" do uszkodzonego elementu. Aby to naprawić, użyj następującej: niepoprawnej pseudoklasy (lub wersji specyficznej dla przeglądarki): https://developer.mozilla.org/en-US/docs/CSS/:invalid – nokturnal

Powiązane problemy