2012-02-22 20 views
5

Sto pensando di utilizzare il input type="email" a me nuovo sito, ma devo domanda se si preferisce utilizzare il tipo di input di testo quindi controllare il valore da un'espressione regolare o utilizzare questo HTML 5 EmailHTML5 Tipo di ingresso Email

E-mail: <input type="email" name="usremail" /> 

Il tipo di input HTML Email ha un problema quando viene utilizzato (browser o utilizzo)?

+2

non credo che è necessario includere un tag php per questa domanda –

risposta

4

È possibile utilizzare la posta elettronica HTML5 per convalidare ma non solo i controlli per XXXX @ XXXX Ecco, questo è un indirizzo email valido lol

almeno per me lo farei diciamo basta usare jquery validate e sempre con convalida lato server

non farà male a utilizzare il tipo di posta elettronica come i browser che non supportano verrà convertito al tipo di testo

si consiglia di guardare modernizr per Compatiblility all'indietro

+0

che jquery validate è un plugin ?? – Bert

+0

sì per jquery molto ampiamente utilizzato e ben documentato da uno dei ragazzi che lavora su jquery – mcgrailm

+0

se questo è il caso xxxx @ xxxx è un indirizzo email valido. sarebbe facile controllare usando espressioni regolari più brevi con il tipo di input email. malato, basta controllare la parte finale .com, .net.org ?? – Bert

0

Se si dispone di supporto bowser, non avrà alcun problema. Se non sono supportati, funziona come normali campi di testo. http://www.w3schools.com/html5/html5_form_input_types.asp

+0

così tutto il supporto del browser questo tipo di input ?? – Bert

+0

IE e Safari non supportano tuttavia il seguente codice potrebbe aiutare a supportare IE9. ' ' – Dips

2

HTML5 - come si sa - non è pienamente supportato dai browser disponibili, questo input type='email' è supportato da Chrome, FF, ma non supportata da IE vecchie versioni .. C'è un modo per aggirare la soluzione: si può stare con questi ingressi HTML5, e usano questo JS libreria per sostenere gli altri browser citati: http://code.google.com/p/webforms2/

+0

vedo .. Stavo pensando di utilizzare perché è il codice più piccolo da usare e riduce la codifica. – Bert

5

Il browser non farà qualsiasi convalida se non lo supporta. È possibile utilizzare modernizr per rilevare se lo fa o meno, e agire di conseguenza. (Come utilizzare la convalida HTML5 nativo, o invece usare qualcosa di simile jQuery validation)

Secondo http://dev.w3.org/html5/markup/input.email.html, l'e-mail in ingresso utilizza questo regex per verificare che sia una e-mail:

/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-][email protected][a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ 

Si dovrebbe convalidarli lato server cose anche così.

+0

vedo ma ancora regex risolverà comunque il problema – Bert

+1

+1 per il modello w3. Buono avere qualche riferimento, quando si discute sul giusto approccio per validazione –

-1

questo tipo di input "E-mail:" non funziona in IE9 e safari quindi verrà trattato come funziona solo su google chrome e mozila fire fox, questa e-mail: convalida automaticamente se il browser supporta HTML5

0

È possibile utilizzare Email:

enter <input type="text" name="email" pattern="[a-z0-9._%+-][email protected][a-z0-9.-]+\.[a-z]{2,3}$" > 

per HTML5 (http://davidwalsh.name/html5-email) qui

+1

Si prega di evitare le risposte di solo collegamento. Almeno avere la cortesia di spiegare perché e in che modo il contenuto di questo link aiuterà l'OP. Se il sito Web a cui si collega si interrompe, la domanda verrà downvoted e probabilmente rimossa. –

Problemi correlati