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

时间:2014-06-04 06:48:37

标签: javascript format currency

我只想问一下如何制作输入类型文本的货币格式的JavaScript。键入数字时,数字是否可能包含逗号?另外,如何使用2位十进制数来固定数字。如果我输入3个十进制数字,则最后一个数字将四舍五入,因此它可以是2个十进制数。

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

这是我的输入类型文字:

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

2 个答案:

答案 0 :(得分:6)

也许是这样的?

var formatNumber = function (val){
    return val.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
}

答案 1 :(得分:1)

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