2011-10-12 20 views
8

Voglio usare: HTML 5 Richiesto.tipo di input html5 richiesto senza un modulo. Funziona?

come

<input type='text' required> 

sembra funzionare solo se il tipo di ingresso è in forma. Posso non usarlo da solo e quindi tramite javascript chiamare una sorta di primo metodo valido?

Altri commenti seguenti valutazioni:

ho

<input id='name' type='text' required> 
    <input id='surname' type='text' required> 
    <input id='send' type='button' onclick ='send()'> 

    function send() { 
     if (document.getElementById('name').value == '') { alert('missing name'); return } 
     if (document.getElementById('surname').value == '') { alert('missing surname'); return } 

     // logic now... 

    } 

il pezzo in cui si controlla i params di ingresso e invia avviso questo è il bit vorrei cambiare utilizzando HTML 5

+0

di poter postare un po 'più di codice per spiegare meglio ciò che si sta cercando di acheive? – beefyhalo

+1

Quando si suppone che la convalida si verifichi se non vi è alcun modulo da inviare? – JJJ

+0

stai usando AJAX per inviare il valore dell'ingresso? –

risposta

9

Certo, utilizzare

document.getElementById('your_input_id').validity.valid 

per verificare la validità di campo in modo dinamico.

+0

Btw, puoi controllare altri valori nell'oggetto di validità se vuoi sapere il motivo esatto per cui questo campo non è valido. – RReverser

+0

document.getElementById ('your_input_id'). Validity.valid funziona, nel senso che dire 'vero'/'false', ma non porta il messaggio tooltip (richiesto) e concentrarsi sul testo che manca il parametro. – Zo72

+0

@ lorenzo72 Ho pensato di voler controllare il campo in JS e implementare il proprio gestore (tooltip o giù di lì). Non puoi fare quello che vuoi. Dovresti avvolgere i tuoi elementi nella forma o implementare il proprio gestore. – RReverser

2

in primo luogo, l'attributo "obbligatorio" scatterà su "submit" evento, quindi, immagino, nessuna forma - niente sarà presentato. Secondo, perché c'è il problema con la forma?

2

Con 'necessaria', questo dovrebbe funzionare solo se il modulo è presentato.

Problemi correlati