Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822

    [Javascript] Sostituire . con ,

    ciao

    ho una stringa fatta cosi

    2999,434343


    vorrei sostituire la virgola e metterci il punto

    2999.434343

    ho provato con le espressioni regolari ma non ci ho capito molto

    mi aiutate ?
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

  2. #2
    stringa.replace( /,/, '.' );
    DYNAMIC+ [ E-mail ]

    Secondo me non si può fare!

  3. #3
    Utente di HTML.it L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822
    ho scritto tale e quale ma non va.... non cambia la virgola in punto
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

  4. #4
    Originariamente inviato da ivy_76
    ho scritto tale e quale ma non va.... non cambia la virgola in punto

    codice:
          <script type="text/javascript">
          <!--
    
            var _numericStr = "19,332";
            alert( _numericStr.replace( /,/g, '.' ) );
    
          //-->
          </script>

    DYNAMIC+ [ E-mail ]

    Secondo me non si può fare!

  5. #5
    OVVIAMENTE, nel tuo caso il modificatore 'G'lobal non fa differenza, visto che la virgola sara' una sola al massimo!
    DYNAMIC+ [ E-mail ]

    Secondo me non si può fare!

  6. #6
    Utente di HTML.it L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822
    non va! Ti spiego come è il mio codice

    frm1.campo1.value= variabile.toString() // contiene un numero convertito in stringa es: 29,232323

    frm1.campo1.value = cambia(frm1.campo1.value,2)



    function cambia(cosa,quanto)
    {
    cosa.replace(/,/g,'.');
    quanto++;

    if(cosa.indexOf(".")>0)
    {
    cosa=cosa.substring(0,cosa.indexOf(".")+quanto);
    }
    cosa=parseFloat(cosa);
    return cosa;


    }



    alla fine ho sempre 29,23 ( solo 2 decimali) ma non il punto
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

  7. #7
    cosa.replace(/,/g,'.');

    va sostituito con

    cosa = cosa.replace( /,/g, '.' );



    altrimenti il replace te lo perdi ed è come se non lo avessi fattO!
    DYNAMIC+ [ E-mail ]

    Secondo me non si può fare!

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ti manca di scrivere il risultato del replace: nella seconda riga della funzione:
    cosa = cosa.replace(/,/g,'.');


    Per l'arrotondamento ci sono metodi migliori:
    codice:
    function cambia(cosa,quanto) {
      var num = parseFloat( cosa.replace(/,/, '.') );
      var esp = math.pow(10, quanto) 
      num = Math.round(num*esp)/esp;
      return num;
    }

    Nota per DYNAM!C+
    In JS non e` il caso di usare variabili che iniziano per _ (underscore): son riservate alle variabili interne di JS, e usarle puo` creare conflitti, soprattutto in alcuni browser.
    In qualche caso si possono usare (per accedere alle variabili interne), ma occorre conoscere esattamente cosa si vuole fare.
    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 L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822
    mi dice che math non è definito
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

  10. #10
    Originariamente inviato da ivy_76
    mi dice che math non è definito
    Math, con la 'M' maiuscola.

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.