• Home page
  • Knowlwedge Base
  • Formattazione valuta in Javascript

Dettaglio Knowledge Base

Formattazione valuta in Javascript

Con questa breve codice è possibile formattare un numero in valuta con separazione decimale e raggruppamento migliaia.

<script type="text/javascript" >

function formatMoney(number, decPlaces, thouSeparator, decSeparator) {

    decPlaces = isNaN(decPlaces = Math.abs(decPlaces)) ? 2 : decPlaces,

    decSeparator = decSeparator == undefined ? "." : decSeparator,

    thouSeparator = thouSeparator == undefined ? "," : thouSeparator,

    sign = number < 0 ? "-" : "",

    i = parseInt(number = Math.abs(+number || 0).toFixed(decPlaces)) + "",

    j = (j = i.length) > 3 ? j % 3 : 0;

    return sign + (j ? i.substr(0, j) + thouSeparator : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thouSeparator) + (decPlaces ? decSeparator + Math.abs(number - i).toFixed(decPlaces).slice(2) : "");

};

</script>

 

Supponiamo di avere un campo input con id='inputNumero' e una variabile 'Numero' e vogliamo scrivere il valore della variabile 'Numero' nel campo 'inputNumero' con la formatattazione valuta (2 decimali, '.' per la separazione delle migliaia e ',' per la separazione dei decimali.

basta richiamare la funzione 'formatMoney' in javascript o jquery.

in javascript

    document.getElementById('inputNumero').value = formatMoney(Numero,2,'.',',');

in jquery

    $('#inputNumero').val(formatMoney(Numero,2,'.',','))