输入类型货币格式,带逗号和小数点2



我只是想问如何使输入类型文本的货币格式的JavaScript。当你输入数字时,有没有可能这些数字会有逗号?此外,如何使数字固定与2十进制数。如果我输入一个3位小数最后一个数字会四舍五入所以它可以是2位小数。

我有一个只接受数字的文本框,我希望它能自动将数字转换为货币格式。1234.556是Php 1,234.56。(Php表示菲律宾比索)

这是我的输入类型text:

 <input type="text" name='Etxt11' placeholder="Proposed price"  onblur="this.value = 'Php ' + formatNumber(this.value)" />

也许像这样?

var formatNumber = function (val){
    return val.toFixed(2).replace(/d(?=(d{3})+.)/g, '$&,');
}
function formatPera(num) {
    var p = num.toFixed(2).split(".");
    return "Php " + p[0].split("").reverse().reduce(function(acc, num, i, orig) {
        return  num + (i && !(i % 3) ? "," : "") + acc;
    }, "") + "." + p[1];
}
var money = 1234.556;
money = formatPera(money);
console.log(money); // Php 1,234.56

同样,功劳归于:https://stackoverflow.com/a/5342097/1978142

最新更新