jquery сортируеми елементи въпрос

Като се има предвид следната структура, може ли div, който съдържа сортируемия списък, да бъде сортиран? Питам, защото с най-новата версия на jquery 1.3 няма да позволи сортиране на divs. Има ли някакво ограничение с jQuery, при което не може да сортира родителски елементи, които съдържат вече сортируем списък, или е защото родителят е div, а не LI елемент? Някой има ли идеи?

<div class="row">
<ul class="sortable">
<li>test1</li>
<li>test2</li>
</ul>
</div>
<div class="row">
<ul class="sortable">
<li>test1</li>
<li>test2</li>
</ul>
</div>
<div class="row">
<ul class="sortable">
<li>test1</li>
<li>test2</li>
</ul>
</div>

person IEnumerator    schedule 11.12.2009    source източник
comment
моля, изяснете всичките си номера на версии... Мисля, че имате правописна грешка. най-новият jq е 1.3.x, UI, е 1.7... вашата версия # за различен плъгин за сортиране или този от UI и коя версия на UI и JQ.   -  person prodigitalson    schedule 12.12.2009
comment
благодаря, че забеляза това. поправено. Използвам плъгина за сортиране, който е изтеглен с потребителския интерфейс.   -  person IEnumerator    schedule 12.12.2009
comment
Какъв код използвате, за да се опитате да ги сортирате? $('div.row').sortable() ?   -  person Alex Sexton    schedule 12.12.2009
comment
да, направих вложено сортиране с 1.3   -  person Funky Dude    schedule 12.12.2009


Отговори (1)


Предполагам, че има недоразумение

Тази команда

$('div.row').sortable()

всъщност ще направи uls във вашите divs сортируеми. Което няма смисъл, тъй като има само едно ul във всеки div и сортирането на един елемент няма смисъл. (Демо страница: http://jsbin.com/ayiwu)


Ако искате да сортирате divs (не uls или lis), можете да използвате този ред

$("div.row").wrapAll("<div></div>").eq(0).parent().sortable();

Сега самите div могат да се сортират (Демо страница: http://jsbin.com/upixa


Ако искате divs и **li**s (не uls, което няма смисъл, когато има само едно ul на div) да могат да се сортират едновременно

$("div.row").wrapAll("<div></div>").eq(0).parent().sortable();
$("div.row").sortable({ items: "li" });

Демо страница: http://jsbin.com/ujatu

Ако искате нещо друго, моля, напишете коментар

P.S.: Съжалявам за ужасния CSS на демонстрационните страници. Само за яснота, че можете да видите върху кой елемент щраквате

person jitter    schedule 12.12.2009