mirror of
				https://github.com/Telecominfraproject/wlan-lanforge-scripts.git
				synced 2025-10-30 18:27:53 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| function sortTable(tableID, n) {
 | |
| var table, rows, switching, i, x, y, shouldSwitch, dir, switchcount = 0;
 | |
| 
 | |
| table = document.getElementById(tableID);
 | |
| switching = true;
 | |
| dir = "asc";
 | |
| while (switching) {
 | |
|     switching = false;
 | |
|     rows = table.getElementsByTagName("TR");
 | |
|     for (i = 1; i < (rows.length - 1); i++) {
 | |
|         shouldSwitch = false;
 | |
|         x = rows[i].getElementsByTagName("TD")[n];
 | |
|         y = rows[i + 1].getElementsByTagName("TD")[n];
 | |
|                 var cmpX=isNaN(parseInt(x.innerHTML))?x.innerHTML.toLowerCase():parseInt(x.innerHTML);
 | |
|                 var cmpY=isNaN(parseInt(y.innerHTML))?y.innerHTML.toLowerCase():parseInt(y.innerHTML);
 | |
| cmpX=(cmpX=='-')?0:cmpX;
 | |
| cmpY=(cmpY=='-')?0:cmpY;
 | |
|         if (dir == "asc") {
 | |
|             if (cmpX > cmpY) {
 | |
|                 shouldSwitch= true;
 | |
|                 break;
 | |
|             }
 | |
|         } else if (dir == "desc") {
 | |
|             if (cmpX < cmpY) {
 | |
|                 shouldSwitch= true;
 | |
|                 break;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
|     if (shouldSwitch) {
 | |
|         rows[i].parentNode.insertBefore(rows[i + 1], rows[i]);
 | |
|         switching = true;
 | |
|         switchcount ++;
 | |
|     } else {
 | |
|         if (switchcount == 0 && dir == "asc") {
 | |
|             dir = "desc";
 | |
|             switching = true;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| } | 
