Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di lupo92
    Registrato dal
    Feb 2004
    Messaggi
    254

    senza caratteri e senza punto

    Buonasera a tutti,

    Ho questo file che mi permette di inserire tre campi testo.
    Con la funzione soloNumeri controllo che vengano inseiriti solo numeri, con la funzione controllo verifico l'inserimento di tutti i campi.
    Il problema è che la solo numeri, funziona con tutti i caratteri tranne che per il punto.
    (Es. mi fa scrivere 14.5 e non mi da errore)

    Qualcuno può aiutarmi?

    Grazie.



    function SoloNumeri(campo)
    {
    if (isNaN(campo.value))
    {
    alert("In questo campo è possibile inserire solo valori numerici.");
    campo.value=campo.value.substr(0, campo.value.length-1);
    }
    }
    </script>

    <script language="javascript">
    function controllo(f) {
    var cod=f.cod;
    var soci_mas=f.soci_mas;
    var soci_fem=f.soci_fem;
    if (sez.value=="" || cod.value < 1 || cod.value > 99) {
    alert("ATTENZIONE CODICE INFERIORE A 0 O SUPERIORE A 99");
    cod.select();
    return false;
    }
    if (soci_mas.value=="") {
    alert("ATTENZIONE INSERIRE SOCI MASCHI.");
    return false;
    }
    if (soci_fem.value=="") {
    alert("ATTENZIONE INSERIRE SOCI FEMMINE.");
    return false;
    }
    return true;
    }
    </script>


    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>

    </head>

    <body onload="document.form1.cod.focus();">
    <form action="salva_soci.php" method="post" name="form1" id="form1" onSubmit="return controllo(this)">
    <input name="cod" type="text" id="cod" size="10" maxlength="4" align="left" onKeyUp="SoloNumeri(this)">


    </p>
    <input name="soci_mas" type="text" id="soci_mas" onKeyUp="SoloNumeri(this)" size="10" maxlength="4" align="left">



    <input name="soci_fem" type="text" id="soci_fem" onKeyUp="SoloNumeri(this)" size="10" maxlength="4" align="left">



    <input name="submit" type="submit" value="Invia" style="text-align:center;">
    </div>
    </form>

    </body>
    </html>
    lupo

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    potresti risolvere in vari modi, il + semplice è cambiare
    if(isNaN(campo.value))
    in
    if(isNaN(campo.value)||campo.value.indexOf(".")>=0 )

    considera cmq che un controllo solo onkeyup può essere facilmente aggirato con copia/incolla...
    ciao

  3. #3
    Utente di HTML.it L'avatar di lupo92
    Registrato dal
    Feb 2004
    Messaggi
    254
    funziona grazie.
    Però è vero quello che dici con un copia e incolla si aggira l'ostacolo, quale sarebbe invece il modo per evitare questo problema?


    lupo

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.