Post edited 01:28 – 13/05/2012 by mcslayton
Tony,
Thank you that change worked great! I needed the unformat as well so I implemented them as shown below.
Can the unformats be called from $.fn.fmatter somehow as well?
Marv
————————————————————————————————————————————-
function isNumeric(number) {
return !isNaN(parseFloat(number)) && isFinite(number);
}
function formatInteger(number) {
return isNumeric(number)
? $.fn.fmatter("integer", number)
: $.jgrid.formatter.integer.defaultValue;
}
function formatNumber(number) {
return isNumeric(number)
? $.fn.fmatter("number", number)
: $.jgrid.formatter.number.defaultValue;
}
function formatCurrency(number) {
return isNumeric(number)
? $.fn.fmatter("currency", number)
: $.jgrid.formatter.currency.defaultValue;
}
function unformatInteger(number) {
var parts = number.split($.jgrid.formatter.number.decimalSeparator);
var out = parseInt(parts[0].replace(/[^0-9-]/g, ''));
return isNumeric(out) ? out : 0;
}
function unformatNumber(number) {
var op = $.jgrid.formatter.number;
var re = /([.*_'(){}+?])/g;
var sep = op.thousandsSeparator.replace(re, "$1");
var stripTag = new RegExp(sep, "g");
var out = number.replace(stripTag, "").replace(op.decimalSeparator, '.');
return isNumeric(out) ? out : 0.0;
}
function unformatCurrency(ret) {
var op = $.jgrid.formatter.currency;
var re = /([.*_'(){}+?])/g;
var sep = op.thousandsSeparator.replace(re, "$1");
var stripTag = new RegExp(sep, "g");
if (op.prefix && op.prefix.length && ret.indexOf(op.prefix) > -1) {
ret = ret.substr(op.prefix.length);
}
if (op.suffix && op.suffix.length && ret.indexOf(op.suffix) > -1) {
ret = ret.substr(0, ret.length - op.suffix.length);
}
ret = ret.replace(stripTag, '').replace(op.decimalSeparator, '.');
return isNumeric(ret) ? ret : 0.0;
}