Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di gim
    Registrato dal
    Oct 2000
    Messaggi
    506

    Solo punto e numeri, ma verifica all'inserimento nel campo

    Ciao a tutti.
    Vorrei verificare che un campo testo contenga solo numeri o punto. Ho fatto delle ricerche ed ho ottenuto questo:
    codice:
    <script>
    function verifica(){
    if(document.form1.numero.value == ""){
    alert("Inserisci un numero");
    document.form1.numero.focus();
    return false;
    }else if(isNaN(document.form1.numero.value)){
    alert("Inserire solo numeri");
    document.form1.numero.focus();
    return false;
    }
    }
    </script>
    <form name="form1">
    <input type="text" name="numero" onkeypress="return verifica();">
    <input type="submit" name="formbutton1" value="controlla">
    </form>
    La differenza rispetto agli script trovati è che vorrei che la verifica sia effettuata alla digitazione dell'utente e non alla pressione del tasto submit.
    Ho provato inserendo onkeypress ma in questo modo mi si apre l'alert sempre, a prescindere da ciò che inserisco.
    Qualcuno sa darmi una mano ad aggiustare il tiro?
    Grazie

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Magari basta un semplice:

    <input ... onkeyup="v=this.value.replace(/[^\d^\.]/gi,'');this.value=v">

    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 L'avatar di gim
    Registrato dal
    Oct 2000
    Messaggi
    506
    Fantastico. Grazie mille!

  4. #4
    Utente di HTML.it L'avatar di gim
    Registrato dal
    Oct 2000
    Messaggi
    506
    ahia; come non detto; ho già una onKeyUp= per farmi fare un calcolo tra due campi. Ti prego, dimmi che esiste una soluzione alternativa simile.

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    <input ... onkeyup="v=this.value.replace(/[^\d^\.]/gi,'');this.value=v;calcola();">

    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

  6. #6
    Utente di HTML.it L'avatar di gim
    Registrato dal
    Oct 2000
    Messaggi
    506
    Grazie mille!
    Mi dà errore di sintassi carattere 1.

    Questo è ciò che ho scritto:
    codice:
    onkeyup='calcola1();v=this.value.replace(/[^\d^\.]/gi,'');this.value=v' maxlength=7>
    Dove sbaglio?

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Se usi gli apici singoli per delimitare lo script devi usare quelli doppi all'interno per delimitare le stringhe... o viceversa come avevo scritto io.

    onkeyup="calcola1();v=this.value.replace(/[^\d^\.]/gi,'');this.value=v" maxlength=7>

    onkeyup='calcola1();v=this.value.replace(/[^\d^\.]/gi,"");this.value=v' maxlength=7>

    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

  8. #8
    Utente di HTML.it L'avatar di gim
    Registrato dal
    Oct 2000
    Messaggi
    506
    Giustissimo. Stavo impazzendo ma ero certo si trattasse di una banalità.
    E' perfetto, grazie mille!

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.