Показать сообщение отдельно
  #6 (permalink)  
Старый 11.11.2010, 16:17
Новичок на форуме
Отправить личное сообщение для Professor Посмотреть профиль Найти все сообщения от Professor
 
Регистрация: 10.11.2010
Сообщений: 3

Спасибо большое за варианты!
Воспользовавшись ими и еще 1 темой с этого форума получилось нечто такое.
$("#rrr").toggle(function(){
//здесь хранятся объекты
        var trs = new Array();
//Здесь хранится список названий объектов
        var seq = new Array();
        var i = 0;
        $("ul#sortable li").each(function() {
            seq[i]=$("ul#sortable li:eq(" + i + ") .name").html();
            trs[seq[i]] = $("ul#sortable li:eq(" + i + ")");
            i ++;
        });

//сортируем список названий объектов
        seq.sort()

        var o=seq.length;
        for (a = -1; a < seq.length; a++){
            var tr=trs[seq[o]]
            if (typeof(tr) != 'undefined') {
                tr.insertAfter($("ul#sortable li:eq(" + a + ")"));
            }
            o--;
        }

        return false;
    },
    function(){
        var trs = new Array();
        var seq = new Array();
        var i = 0;
        $("ul#sortable li").each(function() {
            seq[i]=$("ul#sortable li:eq(" + i + ") .name").html();
            trs[seq[i]] = $("ul#sortable li:eq(" + i + ")");
            i ++;
        });

        seq.sort()
        var o=0;
        for (a = -1; a < seq.length-1; a++){
            var tr=trs[seq[0]]
            if (typeof(tr) != 'undefined') {
                tr.insertAfter($("ul#sortable li:eq(" + a + ")"));
            }
            o++
        }

        return false;

    });


И того должна получиться сортировка по возрастанию и убыванию.
Но почему то исчезает самый маленький элемент.
Я думаю что он просто не вставляется здесь tr.insertAfter($("ul#sortable li:eq(" + a + ")"));

Но как я не мучался, ничего не получается. Может вы подскажете что я не так делаю?
Ответить с цитированием