View Full Version : [HTML]Problema con form su browser mobile
Gogeta ss4
05-02-2010, 13:39
Ciao a tutti.
Ho un form html così comporto:
<html>
<body>
<form name="form" action="pippo.html">
<input type="text" name="KUNNR">
<input type="text" name="KUNWE">
<input type="submit" value="invio">
</form>
</body>
</html>
Il mio problema è il seguente: Quando clicco enter sulla tastiera deve scatenare il submit.
Su IE8/CHROME funziona senza problemi ( browser da pc portatile ) se invece uso la pagina html su windows mobile non funziona il submit automatico alla pressione del tasto enter sulla tastiera.
Se invece elimino un campo input alla pressione dell'enter sulla tastiera la submit viene scatenata.
Sapete quale possa essere il problema?
Grazie.
anonimizzato
05-02-2010, 16:41
In realtà non è un "problema", diciamo che di default molti browser tendono a registrare la pressione del tasto ENTER per form con un solo campo come l'attivazione di un evento onSubmit questo spesso anche quando magari il tasto di submit proprio non c'è.
Quello che devi fare se vuoi che il form venga inviato alla pressione del tasto ENTER anche sul browser del dispositivo mobile è registrare la sua pressione tramite un gestore di eventi Javascript.
Con un framework come JQuery ti basterebbe ad esempio fare:
$(document).ready(function(){
$('miaform').keyup(function(e){
if(e.keyCode == 13) {
$('miaform').submit();
}
});
});
Gogeta ss4
05-02-2010, 16:47
In realtà non è un "problema", diciamo che di default molti browser tendono a registrare la pressione del tasto ENTER per form con un solo campo come l'attivazione di un evento onSubmit questo spesso anche quando magari il tasto di submit proprio non c'è.
Quello che devi fare se vuoi che il form venga inviato alla pressione del tasto ENTER anche sul browser del dispositivo mobile è registrare la sua pressione tramite un gestore di eventi Javascript.
Con un framework come JQuery ti basterebbe ad esempio fare:
$(document).ready(function(){
$('miaform').keyup(function(e){
if(e.keyCode == 13) {
$('miaform').submit();
}
});
});
Ciao e grazie per la risposta.
Cosa dovrei fare per registrare l'enter nel browser?
anonimizzato
05-02-2010, 19:04
Beh intanto comincia a verificare se il browser del tuo dispositivo mobile supporta Javascript.
Se si basta che utilizzi e riadatti al tuo caso lo snippet di codice che ti ho postato.
In pratica
$('miaform').keyup(function(e){
si mette in ascolto dell'evento keyup sulla form che hai creato
$('#form_id').keyup(function(e){
poi con
if(e.keyCode == 13) {
$('miaform').submit();
}
verifiche se il keyCode, ovvero il codice del tasto premuto corrisponde al 13 (ENTER), in quel caso viene eseguito il submit della form.
Non posso garantirti nulla ma se il browser del dispositivo mobile interpreta JS non dovresti avere problemi.
Gogeta ss4
08-02-2010, 08:48
Beh intanto comincia a verificare se il browser del tuo dispositivo mobile supporta Javascript.
Se si basta che utilizzi e riadatti al tuo caso lo snippet di codice che ti ho postato.
In pratica
$('miaform').keyup(function(e){
si mette in ascolto dell'evento keyup sulla form che hai creato
$('#form_id').keyup(function(e){
poi con
if(e.keyCode == 13) {
$('miaform').submit();
}
verifiche se il keyCode, ovvero il codice del tasto premuto corrisponde al 13 (ENTER), in quel caso viene eseguito il submit della form.
Non posso garantirti nulla ma se il browser del dispositivo mobile interpreta JS non dovresti avere problemi.
Ciao,
non me ne intendo molto di Javascript :D
Riusciresti a collegarmi il tuo codice con questa parte di html?
<html>
<body>
<form name="form" action="pippo.html">
<input type="text" name="KUNNR">
<input type="text" name="KUNWE">
<input type="submit" value="invio">
</form>
</body>
</html>
Grazie. :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.