Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    2,125

    onKeyPress non funziona

    ciao.
    ho una semplice pagina di login con 2 campi user e password.
    Quando clikko mi viene richiamata una funzione js che controlla i campi e poi fa il submit.
    Tutto questo vorrei accadesse anche se premo il tasto invio

    Ecco il codice del mio bottone :

    <input name="bottvia" type ="button" value = "invia" onclick="checkForm();" ></td>


    dove check form e' la funzione per il controllo dei campi.

    Per far si che facesse la stessa cosa anche col la pressione del tasto invio sulla tastiera ho provato questi ma non va niente

    oKeyDown="if(event.keycode==13){checkForm();}"
    onKeyPress="if(event.keycode==13){checkForm();}"



    dove sbaglio??

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    <form ... onsubmit="return checkForm();" >
    ...
    <input type="submit" value="invia">

    Fatti restituire dalla funzione un valore false se i controlli che esegui non hanno esito positivo.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    2,125
    non ti capisco....???
    come?
    quali controlli...? io vorrei che se premo invio da tastiera succede qualcosa....tipo fai conto....anche un alert mi va bene

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    2,125
    UP

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    2,125
    nelle mie continue prove ho notato che funziona ma in modo strano...copiate e incollate questo codice e ve ne accorgerete

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>ModelloAdmin</title>
    <link rel = "stylesheet" type = "text/css" href = "../css/hyperlife.css">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <script language = "javascript" type="text/javascript">

    function checkForm()
    {
    alert();
    //document.theForm.submit();

    }

    </script>



    </head>


    <body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0">



    <form name = "theForm" action = "getLogin.php" method = "post" >
    <table border = "1">
    <tr>
    <td valign = "top"><img src = "../images/compumaster.gif" alt = ""></td>
    <td><img src = "../images/twinet.jpg" alt = ""></td>
    </tr>
    <tr>
    <td align = "center">LOGIN</td>
    <td></td>

    </tr>
    <tr>
    <td align = "right">user : </td>
    <td> <input type = "text" name = "user"></td>
    </tr>
    <tr>
    <td align = "right">password :</td>
    <td><input type ="password" name = "password"></td>
    </tr>
    <tr>

    <td colspan = "2" align ="center">
    <input name="bottvia" type ="button" value = "invia" onKeyPress="if(event.keycode==13){checkForm();}" onclick="checkForm();" ></td>
    </tr>
    </table>
    </form>

    </tbody>
    </table>

    </body>
    </html>


    N.B. La cosa strana e' che la pressione del tasto invio funziona solo se prima abbiamo clikkato sul pulsante col mouse...
    In poche parole, appena refreshata la pagina non va niente...se prima click mouse e poi tasto invio ...funziona.


    Sapete dirmi di piu?

  6. #6
    prova a mettere onkeydown nel tag body, nel modo usato da te la seconda volta funge solo xkè avendo già cliccato sul pulsante qst resta selezionato e nn per via dell'onkeydown.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    2,125
    ora come dici te abbiamo fatto un passo avanti ...ma non ha del tutto il perfetto funzionamento.


    In pratica ora con onKeyPress nel body la prima volta che arrivo alla pagina non funziona nulla mentre se clikko prima col mouse sul bottone e premo invio funziona. Ora dopo questa piccola operazione , se refresho funziona al volo anche la pressione del tasto invio.

    Posso far si che funzioni anche la prima volta che arrivo alla pagina senza dover passare per il click col mouse?

    Posto nuovamente il codice aggiornato per permettervi un veloce copy paste.
    ciao e grazie

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>ModelloAdmin</title>
    <link rel = "stylesheet" type = "text/css" href = "../css/hyperlife.css">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <script language = "javascript" type="text/javascript">

    function checkForm()
    {
    alert();
    //document.theForm.submit();

    }

    </script>



    </head>


    <body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0" onKeyDown="if(event.keycode==13){checkForm();}">



    <form name = "theForm" action = "getLogin.php" method = "post" >
    <table border = "1">
    <tr>
    <td valign = "top"><img src = "../images/compumaster.gif" alt = ""></td>
    <td><img src = "../images/twinet.jpg" alt = ""></td>
    </tr>
    <tr>
    <td align = "center">LOGIN</td>
    <td></td>

    </tr>
    <tr>
    <td align = "right">user : </td>
    <td> <input type = "text" name = "user"></td>
    </tr>
    <tr>
    <td align = "right">password :</td>
    <td><input type ="password" name = "password"></td>
    </tr>
    <tr>

    <td colspan = "2" align ="center">
    <input name="bottvia" type ="button" value = "invia" onclick="checkForm();" ></td>
    </tr>
    </table>
    </form>

    </tbody>
    </table>

    </body>
    </html>

  8. #8
    l'errore è dovuto al fatto che keyCode si scrive con la C maiuscola

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    2,125
    A questo punto ...un sentito GRAZIE da parte mia.
    funziona perfettamente

    miticissimo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.