sorting arrow display

Hi,

I am using the table sorting code form this site "http://www.allmyscripts.com/Table_Sort/index.html#features".
Please see attachment gs-sortable.txt. for the code.
Its working fine, but i am having an issue with the display of my sorting indicator arrows.
When i sort the first time on the column AA i get my asc arrow. Fine, but when clicking on column BB to sort, the arrow image of column BB displays but the arrow image of column AA keeps displaying.
Please see attachment pic1.jpg
What i want is that, when i click on for example column BB to sort i don't want the arrow of my last sorting for example on column AA to keep displaying.
Please see attachment pic2.jpg

What code change must i do in the attachment "gs-sortable" in order to make only the selected column sorting arrow to display?

Please some code help. Thanks  

gs-sortable.txt
pic1.JPG
pic2.JPG
eawebAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
SordSordConnect With a Mentor Commented:
Oh, even better, a few lines down is line 245:

if (len > 3)

change that to

if (len > 1)
0
 
SordSordCommented:
I think you want to change the code at line 297:

            obj.innerHTML = (icon.match(/</))? icon:
                  '<font color="' + TSort_Store.sort_colors[i] + '">' + icon + '</font>';

so that it only is processed if i equals 0

   if (i == 0) {
            obj.innerHTML = (icon.match(/</))? icon:
                  '<font color="' + TSort_Store.sort_colors[i] + '">' + icon + '</font>';
  }
0
 
eawebAuthor Commented:
no, the arrow of column AA keep diplaying after sorting on column BB
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
SordSordCommented:
Try adding an else case to clear the innerHTML value.

if (i == 0) {
  obj.innerHTML = (icon.match(/</))? icon:
                  '<font color="' + TSort_Store.sort_colors[i] + '">' + icon + '</font>';
} else {
  obj.innerHTML = '';
}

Open in new window

0
 
eawebAuthor Commented:
Yes the arrow disappear, but another issue has come forward if I change the code as you say.
The issue is this:
if i click on column AA the first time to sort asc and then i want to sort asc on lets say on column BB the arrow disappear, but if I click 3 times on column BB asc, desc and the 3rd time to return to the original state, instead of going to the original state it goes to the asc state on column AA.

Is there a way to go to the original state after clicking the 3rd time on a column and not to the state of a previous column click?
0
 
SordSordCommented:
Sure, insert the following line at line 232:

if (sort_keys.length > 1) sort_keys.length = 1;

(shown below in context)

This will keep resetting the array of sort keys back to length 1, so when you remove the current sort key, there won't be another to fall back to. Note that this will also change the behavior a bit as it will no longer be possible to sort on multiple columns.
      obj = document.getElementById ('TS_' + id + '_' + table_id);
      if	(obj != null)	obj.innerHTML = '';
    }
  }
 
if (sort_keys.length > 1) sort_keys.length = 1;
  var len = sort_keys.length;
  //	This will either remove the column completely from the sort_keys
  //	array (i = 0) or remove duplicate column number if present (i = 1).

Open in new window

0
 
eawebAuthor Commented:
your good in javascript buddy.

i have posted another javascript question. can you help me with it? see link. i can't figure it out how to do it
http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_24575360.html
0
 
eawebAuthor Commented:
great
0
 
eawebAuthor Commented:
the solution of:

if (sort_keys.length > 1) sort_keys.length = 1;

did not work it keep display all the sorting arrows.
0
All Courses

From novice to tech pro — start learning today.