Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: decimali

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

    decimali

    ciao ragazzi!
    qualcuno gentilmente mi potrebbe segnalare uno script per un campo numerico dove sono ammessi solo due decimali? o comunque a scelta...
    Vi ringrazio tantissimo!
    Elisa

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    copia e incolla il codice seguente

    codice:
    <html>
    <head>
    <script>
        function check_numero(dec) {
        
            var re = new RegExp("^\\d+(\\.\\d{1,"+ dec +"})?$")
            var numero = document.getElementById('id_numero').value;
            if (!numero.match(re)) {
                alert('no');   
                return false;
            }
            else {
                alert('si');   
                return true;
            }
        }
    </script>
    </head>
    <body>
    
    <input type="text" name="numero" id="id_numero" value="84.78" />
    <input type="button" value="controlla" onclick="check_numero('2')" />
    
    </body>
    </html>
    il numero massimo di decimali va stabilito come argomento della funzione check_numero('num_max_decimali')

    l'esempio consente fino a due decimali, ovvero reputa validi
    ad es. 1, 1.1, 1.12 ma non 1.125, 1.5898777, abcde, ecc. ecc.

    Ultima precisazione: usa il punto per i decimali (.), non la virgola (,)



    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    ciao ragazzi!
    ringrazio fcaledera per l'aiuto!
    solo che ho un problmea cono lo scriptnon funziona proprio...come se non richiamassi la function...
    guardate!

    function check_numero(dec)
    {


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

    <form action="" method="post" name="form1" onsubmit="return check_numero(dec);">
    <input type="text" name="numero" id="id_numero" value="82.23">
    <input type="submit" value="controlla" onclick="check_numero('2')">
    </form>

    vir ingrazio per l'aiuto!

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    ti manca l'apertura del tag script: devi scrivere

    codice:
    <script>
    subito prima della funzione check_numero()

    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    si si l'avevo scritto...argh!!non capisco proprio perchè non funziona

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    il pezzo di codice che ti ho postato funziona. Prova a usare solo quello eliminando gli alert che non ti servono.

    probabilmente usi altro codice che interferisce con questo

    Puoi postare la pagina (completa) che non ti funziona???
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    si certo...ora te la posto!grazie

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    guarda il codice che ho scritto è questo:

    <head>
    <script>
    function check_numero(dec)
    {

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


    </head>

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

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

    </form>

  9. #9
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    ho copiato il codice che mi hai postato così com'era e funziona (anche se andrebbe completato con la chiusura del tag body e del tag html)

    A te che errore dà? Che cosa ti aspetti che faccia che invece non fa? Che browser stai usando?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    quando inserisco la cifra ad esempio 12.33 ok passa...ma se inserisco 12 che non passi...esca il messaggio devi inserire i due decimali..ma il codice è giusto...solo che cliccando sul bottone non accade nulla..
    si ma è tutto all interno al tag html io ti ho copiato e incollato approssitivamente..guarda sn in tilt. scrivo codice javas ma questo mi spiazza...ti ringrazio cmq per l'aiuto!

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.