2016-01-27 8 views
8

So che l'evento onsubmit si verifica quando viene inviato un modulo.Qual è il significato di onsubmit = "return false"? (JavaScript, jQuery)

In generale ciò che facciamo è, stiamo chiamando un metodo su onsubmit come <form action="" onsubmit="myfunction()">

Oggi ho visto questo, "<form action="" onsubmit="return false">". Come funziona? Non riuscivo a capire quale sia il significato di onsubmit="return false".

PS: Ho trovato questo quando ho imparato l'Ajax. Era un tutorial che spiega come inviare i dati al database senza aggiornare la pagina.

+2

'return false' annulla l'azione di invio predefinita (arresta l'invio del modulo). – Satpal

+0

Significa "Non fare nulla". Restituisce il flusso di controllo .. – Rayon

+0

Significa che non fare nulla su submit. – RK12

risposta

16

Fondamentalmente per gestire manualmente l'invio del modulo.

Per esempio - fini convalida Vedere sotto il codice e vedere come può essere utile:

<SCRIPT LANGUAGE="JavaScript"> 
myFunctionName() { 
    if (document.myForm.myText.value == '') 
     return false; 
     //when it return false - your form will not submit and will not redirect too 
    else 
     return true; 
    //when it return true- your form will submit and will redirect 
// (actually its a part of submit) id you have mentioned in action 
} 
</SCRIPT> 

<FORM NAME="myForm" onSubmit="return myFunctionName()"> 
<INPUT TYPE="TEXT" NAME="myText"> 
<INPUT TYPE="SUBMIT" VALUE="Click Me"> 
</FORM> 
+1

Per favore, puoi spiegarmi cosa succede se è vero? Cosa succede se viene restituito falso? – Sasa1234

+1

@ Sasa1234 ho modificato il codice di cui sopra e ho spiegato nel commento. "quando restituisce false' - il tuo modulo non verrà inviato e non verrà reindirizzato troppo e se restituisce true'- il modulo invierà e reindirizzerà (in realtà è una parte di invio) id che hai menzionato in azione" –

0

Se si utilizza il tasto, invece di inviare come nel mio caso qui di seguito.

<FORM NAME="myForm" onSubmit="myFunctionName(); return false"> 
    <INPUT TYPE="TEXT" NAME="myText"> 
    <INPUT TYPE="button" VALUE="Click Me" onclick="myFunctionName()"> 
</FORM> 
+0

Formato la tua risposta – Billa