Last modified: 2012-02-02 00:34:49 UTC
Recently a new option of sortable tables was added, but the sorting script
doesn't sort properly numbers with commas (like 12,000). an example:
and the results (from bigger to smaller number): "12", "9", "8", "8,000", and of
course it should be: "8,000", "12", "9", "8".
It should be noticed that the script works fine with dots (like 8.532). I'm
almost sure that the reason for this bug is wrong recognizing of numbers with
commas as strings, and not as numbers.
Maybe it can be fixed in sorttable.js by changing the line:
"if (itm.match(/^\s*[\d\.]+\s*$/)) sortfn = ts_sort_numeric;"
"if (itm.match(/^\s*[\d\.\,]+\s*$/)) sortfn = ts_sort_numeric;"
Should this not also be subject to localisation? In some locales, the "decimal point"
is represented by a period and the "thousand separator" by a comma; in others it is
the other way around.
(In reply to comment #1)
> Should this not also be subject to localisation? In some locales, the "decimal
> is represented by a period and the "thousand separator" by a comma; in others
> the other way around.
That's bug 8063. We could argue that this is a duplicate.
This is a problem with any non-numeric character, including negative numbers
with "-". Some discussion here http://blog.webkist.com/archives/000043.html
"It should be noticed that the script works fine with dots (like 8.532)"
It doesn't always - see
and click 1995's sorting arrow once, scroll down, and you'll see it's correctly
sorted. Click 1995's sorting arrow a second time and it now incorrectly sorts
the reals like strings: ... 7.12, 68.09, 6.85 ... instead of 68.09, 57.91 ...
7.12, 6.85 ...
That has been fixed now, but see
some more modifications, that allow numbers with commas
or spaces as thousands separators, and in scientific
It also allows links in headers, by adding the HTML for
the sort button to the existing HTML instead of to the
inner text. That seems to work fine in the simple cases
that I have tried.
It is helpful that a comma in a number is now allowed
as thousands separator, but please allow also multiple
Also, please allow negative numbers.
Try again to make a link:
Fixed in upcoming jQuery version
fixed in patch for Bug 8028
r86088 is seriously broken and may get reverted; reopening. Needs unit tests (see initial basic unit tests in r90595 which show up errors; will also need tests for the particular case this bug is about.)
Assigning bug from DieBuche to me. Will check QUnit tests and write missing one.
Added some tests with r105560
Need to find out how to change the locale to redo the same tests with a different language.
This appears to be fixed. If there's a task associated with this that needs to be fixed, that should be a separate bug.