Ho un form di login con un evento di cliccare il tasto Invio per inviare il modulo, non funziona in IE
-
27-09-2019 - |
Domanda
Ho un form di login con un evento di cliccare ENTER per inviare il modulo, non funziona in IE
<form name="login" action="" method="post">
<ul>
<li class="col1">E-mail Address</li>
<li class="col2"><input name="email_address" type="text" class="textfiled" /></li>
<li class="col1">Password</li>
<li class="col2"><input name="password" type="password" class="textfiled" /></li>
<li class="col1"></li>
<li class="col2"><input name="signin" type="button" class="signin-btn" onclick="javascript: login.submit();" onkeydown="javascript: if (window.event.keyCode == 13) login.submit(); else window.event.keyCode = null;"/></li>
</ul>
</form>
tasto Qui a presentare devo parlare di un evento come onkeydown="javascript: if (window.event.keyCode == 13) login.submit(); else window.event.keyCode = null;"
Questa è non funziona in IE, qualcuno mi può suggerire alcuna soluzione per questo o qualsiasi alternativa di soluzione che ho chiesto la mia esigenza?
Soluzione
Qual è il motivo per cui non si sta usando un semplice
<input type="submit">
Si dovrebbe consentire il "entrare a presentare" il comportamento in tutti i browser, senza dover utilizzare JavaScript a tutti.
Altri suggerimenti
Si dovrebbe spostare l'evento onKeyDown per i campi di testo piuttosto che sul controllo pulsante.
Oltre a rispondere spinoni si poteva osservare l'onkeydown di tutto il modulo:
<form onkeydown="(function(event,form){if(event.keyCode == 13){form.submit();}})(event,this)" name="login" action="" method="post">