Skip to content

Instantly share code, notes, and snippets.

@jpemberthy
Created December 15, 2008 14:25
Show Gist options
  • Save jpemberthy/35963 to your computer and use it in GitHub Desktop.
Save jpemberthy/35963 to your computer and use it in GitHub Desktop.
(function($) {
$.fn.formatCurrency = function(settings) {
settings = jQuery.extend({
name: "formatCurrency",
useHtml: false,
global: true
}, settings);
return this.each(function() {
var num = "0";
num = $(this)[settings.useHtml ? 'html' : 'val']();
num = num.replace(/\$|\,/g, '');
if (isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num * 100 + 0.50000000001);
cents = num % 100;
num = Math.floor(num / 100).toString();
if (cents < 10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));
$(this)[settings.useHtml ? 'html' : 'val'](((sign) ? '' : '-') + '$' + num + '.' + cents);
});
};
})(jQuery);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment