Visualizzazione dei risultati da 1 a 4 su 4

Discussione: aiuto sul onkeypress

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253

    aiuto sul onkeypress

    Ciao ragazzi!
    Buona domenica!
    Il mio studio su javascript continua..!
    Ho provato la proprietà onkeypress, volevo sapere se è possibile aggiungere delle condizioni, poichè la mia idea era di aggiungere a questa funzione, che controlla se vengono inseriti due decimali dopo la virgola, la possibilità che se l'utente inserisce piu' di due zeri allora scatta il messaggio senza inviare il form! solo che per come ho scritto io scatta appena inserisco del testo...guardate!

    <script>
    function check_numero(dec)
    {

    var re = new RegExp("^\\d+\\.\\d{"+ dec +"}?$")
    var numero = document.getElementById('id_numero').value;
    if (!numero.match(re)) {
    alert('il numero non è corretto, inserire 2 decimali');
    return false;
    }
    else {
    return true;
    }
    }
    </script>

    </head>

    <body>
    <form action="" name="form1" method="post" onSubmit="">

    <input type="text" name="numero" id="id_numero" value="" onkeypress="check_numero(this.value)">
    <input type="submit" value="controlla" onclick="check_numero('2')">

    </form>


    All'interno della funzione già si controlla che si devono inserire solo due decimali...mi potreste dare una mano?
    Grazie mille per le risposte!
    Un saluto!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    ragazzi proprio nessuno mi potrebbe aiutare...

  3. #3
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Per l'uso che ne devi fare onkeypress non va bene... a te serve onblur

    Inoltre e' sbagliata la chiamata... tu passi il contenuto del campo e non il numero di decimali da controllare... inltre il controllo va ripetuto sull'onsubmit del form.

    codice:
    <script> 
    function check_numero(dec) { 
      var re = new RegExp("^\\d+\\.\\d{"+ dec +"}?$") 
      var numero = document.getElementById('id_numero').value; 
      if (!numero.match(re)) { 
        alert('il numero non è corretto, inserire 2 decimali'); 
        return false; 
      } 
      else { 
        return true; 
      } 
    } 
    </script> 
    
    </head> 
    
    <body> 
    <form action="" name="form1" method="post" onSubmit="return check_numero(2)"> 
    
    <input type="text" name="numero" id="id_numero" value="" onblur="check_numero(2)"> 
    <input type="submit" value="controlla"> 
    
    </form>

    ciao

    ps: comunque non e' una proprieta' ma un evento
    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

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    ciao!Si scusami solo che l ho fatta di fretta ma so che va richiamata nel onsubmit e che onkeypress è un metodo !Non credevo di dover usare onblur..correggo subito!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.