在我正在研究的系统中有许多价格输入,我想为所有这些输入创建一个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
任何提示?
非常感谢! :)
答案 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>
我希望它会对你有帮助;)