Forum
22:17
12/02/2014
We have numeric columns that allows empty values, which are represented by the empty string. When sorted locally, the empty values are equal to 0 and greater than negative numbers. For example, if we have a set of values: [3,0,-4,''] the values would be sorted as [3,0, '', -4]. This is unintuitive to our users. This happens for both "float" and "int" types.
I suggest the empty string (or any value that results in NaN when passed to parseFloat or parseInt) should be treated as Number.NEGATIVE_INFINITY. This way non-numeric values are always considered less than numeric ones.
This patch should correct the issue (lines 459-468 in jquery.jqGrid.src.js version 4.5.4):
if (type === 'float' || type=== 'number' || type=== 'currency' || type=== 'numeric') {
findSortKey = function($cell) { var key = parseFloat( String($cell).replace(_stripNum, '')); return isNaN(key) ? Number.NEGATIVE_INFINITY : key; }; } else if (type==='int' || type==='integer') { findSortKey = function($cell) { return $cell ? parseFloat(String($cell).replace(_stripNum, '')) : Number.NEGATIVE_INFINITY; }; }
16:25
Moderators
30/10/2007
Hello,
Thanks. Fixed in GitHub
For professional UI suites for Java Script and PHP visit us at our commercial products site - guriddo.net - by the very same guys that created jqGrid.
Most Users Ever Online: 715
Currently Online:
36 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
OlegK: 1255
markw65: 179
kobruleht: 144
phicarre: 132
YamilBracho: 124
Renso: 118
Member Stats:
Guest Posters: 447
Members: 11373
Moderators: 2
Admins: 1
Forum Stats:
Groups: 1
Forums: 8
Topics: 10592
Posts: 31289
Newest Members:
, razia, Prankie, psky, praveen neelam, greg.valainis@pa-tech.comModerators: tony: 7721, Rumen[Trirand]: 81
Administrators: admin: 66