如何使用 jquery 正确格式化货币?
我不需要掩码,但我需要一些可以格式化货币(在所有浏览器中)并且不允许输入任何字母或特殊字符的东西。感谢您的帮助
示例:
有效:$50.00
$1,000.53
无效:$w45.00
$34.3r6
I do not need a mask, but I need something that will format currency(in all browsers) and not allow for any letters or special char's to be typed. Thanks for the help
Example:
Valid: $50.00
$1,000.53
Not Valid: $w45.00
$34.3r6
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
另一个选项(如果您使用的是 ASP.Net razor 视图)是,在您的视图上,您可以执行
此操作,这将正确格式化它。注意(item.total 是双精度/小数)
如果在 jQuery 中你也可以使用正则表达式
Another option (If you are using ASP.Net razor view) is, On your view you can do
This would format it correctly. note (item.total is double/decimal)
if in jQuery you can also use Regex
JQUERY 格式货币插件
http://code.google.com/p/jquery-formatcurrency/
JQUERY FORMATCURRENCY PLUGIN
http://code.google.com/p/jquery-formatcurrency/
扩展 Melu 的答案,您可以执行此操作来功能化代码并处理负金额。
示例输出:
$5.23
-$5.23
Expanding upon Melu's answer you can do this to functionalize the code and handle negative amounts.
Sample Output:
$5.23
-$5.23
作为为什么 jQuery FormatCurrency 插件是一个很好的答案的推论,我想反驳您的评论:
1。 code.google.com/p/jquery-formatcurrency - 不过滤掉所有字母。您可以输入单个字母,它不会将其删除。
是的,formatCurrency() 本身不会过滤掉字母:
但是 formatCurrency 插件中包含的 toNumber() 可以过滤掉字母。
因此你想做:
As a corollary to why the jQuery FormatCurrency plugin is a good answer, I'd like to rebut your comment:
1. code.google.com/p/jquery-formatcurrency - Does not filter out all letter's. You can type a single letter and it will not remove it.
Yes, formatCurrency() by itself does not filter out letters:
But toNumber(), included in the formatCurrency plugin, does.
You thus want to do:
使用 jquery.inputmask 3.x。
请参阅此处的演示
包含文件:
并将代码作为
亮点:
Use jquery.inputmask 3.x.
See demos here
Include files:
And code as
Highlights:
我以前用过jquery格式的货币插件,但是最近bug很多。我只需要美元/加元的格式化,所以我编写了自己的自动格式化。
只需设置应格式化为货币
的任何输入的类,它将在任何浏览器中完美格式化。
I used to use the jquery format currency plugin, but it has been very buggy recently. I only need formatting for USD/CAD, so I wrote my own automatic formatting.
Simply set the class of whatever input should be formatted as currency
<input type="text" class="currencyMask" />
and it will format it perfectly in any browser.尝试使用 jQuery 正则表达式货币(无插件):
编辑:新检查值是否有效
Try regexp currency with jQuery (no plugin):
Edit: New check a value to valid/invalid
JavaScript 已经有了它。
JavaScript already has it.
C#
jQuery
其中 Model.culture 是例如“en-GB”
C#
jQuery
Where Model.culture is for example "en-GB"