So che questa domanda è stata già presentata ma non sono riuscito a trovare una risposta soddisfacente per la mia situazione. Quindi ti sto chiedendo di nuovo.Prevenire l'invio del modulo al tasto Invio per il testo
Ho un modulo semplice con 2 caselle di testo e un pulsante di invio. Dopo che l'utente immette il testo in una casella di testo, non dovrebbe essere in grado di inviare tramite il tasto Invio, solo il pulsante di invio dovrebbe consentire loro di inviare. Ho pensato intrappolando la pressione del tasto entrare e ritorno falso dal gestore di eventi onChange farebbe il trucco, ma a quanto pare no, questo provoca ancora un invio di form ...
function doNotSubmit(element) {
alert("I told you not to, why did you do it?");
return false;
}
</script>
<form id="myForm" action="MyBackEnd.aspx" method="post">
<table>
<tbody>
<tr>
<td>
Joe: <input id="JoeText" type="text" onChange="doNotSubmit(this)">
</td>
<td>
Schmoe: <input id="SchmoeText" type="text" onChange="doNotSubmit(this)" >
</td>
</tr>
</tbody>
</table>
<input type=submit>
ho testato su entrambi Chrome e FF (ultime versioni).
Puoi per favore mostrarmi come impedire l'invio del modulo?
Grazie.
possibile duplicato del [impedire agli utenti di presentare forma premendo Invio] (http://stackoverflow.com/questions/895171/prevent-users-from-submitting-form-by-hitting-enter) – dan08
First , Penso che tu voglia onkeypress o onkeydown invece di onchange. Secondo, da dove viene 'e' nella funzione' doNotSubmit'? – ray