2013-03-04 6 views
3

Я пытаюсь создать редактор меню навигации, состоящий из множества вложенных, сортируемых форм, которые в конечном итоге будут представлены в массовом порядке, как один гигантский вложенный блок данных JSON, содержащий все данные формы.nestableSortable vs Nestable JS library

Две библиотеки, которые я рассматриваю, являются nestableSortable (https://github.com/mjsarfatti/nestedSortable) и Nestable (https://github.com/dbushell/Nestable). Эти две библиотеки, по-видимому, являются наиболее часто используемыми проектами для такого типа работ, однако, как представляется, не имеют встроенных функций для сериализации и вложения этих форм. Прямо сейчас я полагаю, что либо библиотека потребует от меня как-то встроить эту функциональность.

Nestable, по-видимому, немного новее и не зависит от JQuery-UI, в то время как nestableSortable выглядит немного более функционально. Мне также интересно, есть ли у кого-то подобная проблема с вложенными формами и есть ли у них какие-либо советы о том, как получить любую из этих библиотек, чтобы легко сериализовать вложенные формы в структуру JSON и будет ли одна из этих библиотек лучше подходит для таких проект.

ответ

3

Я начал с nestedSortable, а затем переключился на вложенный. Теперь я перехожу обратно в inestedSortable, потому что он совместим с IE7 (требование к проекту). Да, легко оценить более минималистичную структуру вложенных, однако, обязательно проконсультируйтесь с вашим целевым браузером (ов), прежде чем совершать какие-либо из этих (отличных) утилит.

BTW, оба имеют возможность сериализовать свои данные (вложенная имеет один, вложенныйСortable имеет несколько).

5

Если кому-то интересно, после дальнейшей проверки я обнаружил, что Вкладываемый требует этого формата для того, чтобы работать:

<div class="dd"> 
    <ol class="dd-list"> 
     <li class="dd-item" data-id="1"> 
      <div class="dd-handle">Item 1</div> 
     </li> 
    </ol> 
</div> 

Я не был особенно доволен идеей, что библиотека JS будет настолько строга в отношении необходимости как я чувствовал, что Javascript должен обрабатывать это несколько независимо от разметки. Из-за этого я закончил выбор вложенных файлов в библиотеку Nestable.

Кроме того, вложенныеСortable, по-видимому, имеют полезные свойства для атрибутов left/right/parent для узлов в дереве, что может быть полезно на стороне сервера при выполнении древовидных операций.