为货币输入创建一个css类

时间:2014-08-27 11:55:09

标签: css decimal currency

在我正在研究的系统中有许多价格输入,我想为所有这些输入创建一个css类,因此输入将有一个货币掩码(like 4.500,00[yes, '.' for thousands and ',' for decimal])。

我抬头找到了这个jsmaskedinput,但它并不适合我的需要。输入可以包含0到13之间的任意数字,并且可以在输入时进行操作,例如:

 10   -> 10,00

 1500 -> 1.500,00

 6331500 -> 6.331.500,00

 5446331500 -> 5.446.331.500,00

任何提示?

非常感谢! :)

2 个答案:

答案 0 :(得分:1)

Here是您的解决方案

<强> HTML

<div id="this">-123456789.12345678</div>

<强> JS

var myText = $("#this").text();
myText = addCommas(myText);
$("#this").text(myText);
function addCommas(nStr)
{
    nStr += '';
    x = nStr.split('.');
    x1 = x[0];
    x2 = x.length > 1 ? ',' + x[1] : '';
    var rgx = /(\d+)(\d{3})/;
    while (rgx.test(x1)) {
        x1 = x1.replace(rgx, '$1' + '.' + '$2');
    }
    return x1 + x2;
}

根据this链接改编的答案。

  • 原始号码为:-123456789.12345678
  • 输出编号为:-123.456.789,12345678

答案 1 :(得分:-1)

HTML

<form method = "POST">    
    <label for = "currency">Currency</label>
    <input type = "number" pattern = "^\\$?(([1-9](\\d*|\\d{0,2}(,\\d{3})*))|0)(\\.\\d{1,2})?$" id = "currency" required autofocus/>
    <br /><br />
    <input type = "submit" value = "Send" />
</form>

http://jsfiddle.net/2gqodf13/

我希望它会对你有帮助;)