Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413

    controllare un valore di valuta

    ciao a tutti...
    vorrei controllare che il valore inserito in una casella di testo sia di tipo valuta:
    mi basta controllare che contenga solo numeri e i caratteri "," e "."

    per controllare che sia un numero ci sono: testo.value.match(/^\d*$/)

    ma per aggiungere il controllo sui due caratteri?

    (N.B il controllo deve dare errore se il valore non e un numero, oppure e un numero con caratteri strani, ma deve dare errore anche se l'utente inserisce solo un "," e basta)

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    il match va benissimo, cambia solo la regexp al suo interno:
    codice:
    /^[\d\.]+\,\d{,2}$/
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    ehm...non va.

    nel senso che mi blocca sempre.
    se scrivo 100 mi avvisa che sto sbagliando (e invece non e vero)
    se scrivo 100.00 mi avvisa che sto sbagliando (e invece non e vero)
    se scrivo 100,00 mi avvisa che sto sbagliando (e invece non e vero)

    non capisco quando funziona...

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Be`, anzitutto devi chiarire cosa vuoi.

    Avevo capito che volevi che ci fosse sempre la virgola, mentre il punto lo avevo preso per la separazione delle migliaia.

    Pero` 100,00 quella RegExp li` deve accettarlo.

    Comunque prova con quest'altra RegExp:[code]
    /^\d+([\,\.]\d{,2})*$/

    Questa accetta i tre casi da te prospettati (e non i punti come separatori di migliaia)
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    prima di tutto volevo ringraziarti per la risposta.
    dunque...
    a me piacerebbe che l'utente potesse inserire la valuta nei seguenti modi:

    100 (accettato, sarebbero 100 euri.. )
    100.000,99 (accettato)
    100000,99 (accettato)
    5,99 (accettato)


    si puo fare con una reg exp???

    grazie ancora

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Si`, allora la regexp dovrebbe essere questa:
    codice:
    /^\d{1,3}(\.*\d{3})*(\,\d{,2})?$/
    Oppure, piu` semplice:
    codice:
    /^[\d\.]+(\,\d{,2})?$/
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    nn mi supporta il caso della virgola:

    100,99 o 100.000,99 mi dice che non e supportato

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Forse la virgola non vuole la bachslash davanti (ma dovrebbe funzionare anche con), o forse manca un ? dopo il * :
    codice:
    /^\d{1,3}(\.*\d{3})*?(,\d{,2})?$/
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    non va ancora....

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ce l'hai in una pagina pubblicata? Puoi lasciare il link?

    Mi piacerebbe vedere la RegExp in funzione in una pagina, dato che quel che dici non mi convince a fondo e sospetto qualche errore di implementazione (le regexp sono molto delicate).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.