EasyUI Forum
September 14, 2025, 11:00:56 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: [SOLVED]Datagrid formatter problem  (Read 11647 times)
Pierre
Sr. Member
****
Posts: 439


View Profile Email
« on: April 12, 2016, 07:41:24 AM »

Hello all
I have simple table column:

Code:
<th field="quantity" data-options="formatter:formatdecimal">Quantity</th>

formatdecimal looks like this:

Code:
Number.prototype.format = function(n, x, s, c) {
  var re = '\\d(?=(\\d{' + (x || 3) + '})+' + (n > 0 ? '\\D' : '$') + ')',
  num = this.toFixed(Math.max(0, ~~n));
  return (c ? num.replace('.', c) : num).replace(new RegExp(re, 'g'), '$&' + (s || ','));
};

function formatdecimal(num){
  return num.format(2, 3, '.', ',');
}

and it says "Uncaught TypeError: num.format is not a function"
What is the problem?
Here is original code:
http://jsfiddle.net/hAfMM/612/
Is there any other option to format numbers like 123.456,78
(group separator point, decimal separator comma)

Thank you
« Last Edit: April 12, 2016, 10:26:21 PM by Pierre » Logged
stworthy
Administrator
Hero Member
*****
Posts: 3581


View Profile Email
« Reply #1 on: April 12, 2016, 06:06:38 PM »

You must convert to 'number' type before calling your 'format' function.
Code:
function formatdecimal(num){
  return parseInt(num).format(2, 3, '.', ',');
}
Logged
Pierre
Sr. Member
****
Posts: 439


View Profile Email
« Reply #2 on: April 12, 2016, 10:26:08 PM »

Awesome. Thank you.
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!