Показать сообщение отдельно
  #1 (permalink)  
Старый 18.06.2010, 21:34
Аватар для Bulletprof
Новичок на форуме
Отправить личное сообщение для Bulletprof Посмотреть профиль Найти все сообщения от Bulletprof
 
Регистрация: 18.06.2010
Сообщений: 1

Автосорировка строк в таблице
Имеется скрипт для сортировки
function sort(el) {	
   var col_sort = el.innerHTML; 
   var tr = el.parentNode;
   var table = tr.parentNode;    
   var td, arrow, col_sort_num;
   
	for (var i=0; (td = tr.getElementsByTagName("td").item(i)); i++) {
   	if (td.innerHTML == col_sort) {
            col_sort_num = i; 
            if (td.prevsort == "y"){
                arrow = td.firstChild;
                el.up = Number(!el.up);
            }else{
                td.prevsort = "y";
                arrow = td.insertBefore(document.createElement("span"),td.firstChild);
                el.up = 0;
            }
            arrow.innerHTML = el.up?"↑ ":"↓ ";
        }else{
            if (td.prevsort == "y"){
                td.prevsort = "n";
                if (td.firstChild) td.removeChild(td.firstChild);
            }
        }
    }
	 
	 var a = new Array();
	 
    for(i=1; i < table.rows.length; i++) {
	 	a[i-1] = new Array();
	 	a[i-1][0]=table.rows[i].getElementsByTagName("td").item(col_sort_num).innerHTML;
		a[i-1][1]=table.rows[i];
	 }
	 
	 a.sort();
	 if(el.up) a.reverse();	 
	 
	 for(i=0; i < a.length; i++)
	 table.appendChild(a[i][1]);


все работает, но нужно немного другое: он сортирует 1,10,100,101...., а нужно 1,2,3,4,5..., и не по клику а по умолчанию. я в JS не шарю так что сори если тупой вопрос)
Ответить с цитированием