forked from price-format/Jquery-Price-Format
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjquery.price_format.min.js
4 lines (4 loc) · 1.74 KB
/
jquery.price_format.min.js
1
2
3
4
(function(d){d.fn.priceFormat=function(a){a=d.extend({prefix:"US$ ",suffix:"",centsSeparator:".",thousandsSeparator:",",limit:!1,centsLimit:2,clearPrefix:!1,clearSufix:!1,allowNegative:!1},a);return this.each(function(){function g(k){for(var b="",a=0;a<k.length;a++)char_=k.charAt(a),0==b.length&&0==char_&&(char_=!1),char_&&char_.match(t)&&(m?b.length<m&&(b+=char_):b+=char_);for(var c;b.length<j+1;)b="0"+b;c=b;var b="",a=0,d=c.substr(c.length-j,j),e=c.substr(0,c.length-j);c=e+n+d;if(l){for(c=e.length;0<
c;c--)char_=e.substr(c-1,1),a++,0==a%3&&(char_=l+char_),b=char_+b;b.substr(0,1)==l&&(b=b.substring(1,b.length));c=b+n+d}if(o&&-1!=k.indexOf("-")&&(0!=e||0!=d))c="-"+c;h&&(c=h+c);i&&(c+=i);return c}function f(){var a=e.val(),b=g(a);a!=b&&e.val(b)}function p(){if(""!=d.trim(h)&&q){var a=e.val().split(h);e.val(a[1])}}function r(){if(""!=d.trim(i)&&s){var a=e.val().split(i);e.val(a[0])}}var e=d(this),t=/[0-9]/,h=a.prefix,i=a.suffix,n=a.centsSeparator,l=a.thousandsSeparator,m=a.limit,j=a.centsLimit,q=
a.clearPrefix,s=a.clearSuffix,o=a.allowNegative;d(this).bind("keydown",function(a){var b=a.keyCode?a.keyCode:a.which,d=String.fromCharCode(b),c=!1,f=e.val(),d=g(f+d);if(48<=b&&57>=b||96<=b&&105>=b)c=!0;8==b&&(c=!0);9==b&&(c=!0);13==b&&(c=!0);46==b&&(c=!0);37==b&&(c=!0);39==b&&(c=!0);if(o&&(189==b||109==b))c=!0;c||(a.preventDefault(),a.stopPropagation(),f!=d&&e.val(d))});d(this).bind("keyup",f);q&&(d(this).bind("focusout",function(){p()}),d(this).bind("focusin",function(){var a=e.val();e.val(h+a)}));
s&&(d(this).bind("focusout",function(){r()}),d(this).bind("focusin",function(){var a=e.val();e.val(a+i)}));0<d(this).val().length&&(f(),p(),r())})};jQuery.fn.unmask=function(){var a=d(this).val(),g="",f;for(f in a)if(!isNaN(a[f])||"-"==a[f])g+=a[f];return g}})(jQuery);