我正在尝试创建一个可通过拖放进行排序的多级列表。用户可以抓取一个元素并在树上上下移动它,或者将它放到其他元素中并让它成为一个子元素。
有现成的 JS 解决方案吗?jQuery sortable/draggable 在单级列表中工作得很好,但在嵌套解决方案中则不然。
我正在尝试创建一个可通过拖放进行排序的多级列表。用户可以抓取一个元素并在树上上下移动它,或者将它放到其他元素中并让它成为一个子元素。
有现成的 JS 解决方案吗?jQuery sortable/draggable 在单级列表中工作得很好,但在嵌套解决方案中则不然。
您也可以尝试https://github.com/dbushell/Nestable(演示:http ://dbushell.github.io/Nestable/ )。
适用于鼠标和触摸,此插件与 jQuery 和 Zepto 兼容。
我正在使用 johnny 的 jquery-sortable 插件,可以在这里找到http://johnny.github.io/jquery-sortable。
它似乎工作得很好。
我还试图让它通过 AJAX 发回列表的排序结构。如果您想查看我的工作解决方案,请参阅此主题,因为有关序列化的官方文档似乎有点不令人满意(至少对于嵌套列表)。
希望这会有所帮助。
所以虽然你可以使用https://github.com/dbushell/Nestable或http://johnny.github.io/jquery-sortable
这些天你可能想转移到像 React 这样的东西,所以你可以使用这样的包:https ://www.npmjs.com/package/react-drag-sortable
尽量不要再将 jQuery 用于此类事情。当您拥有拖放界面时,您就拥有了 web 应用程序,而不是网页,并且您走错了方向。
我看到了一个名为 react-nestable 的包,它可以创建嵌套的拖放。我在下面放了那个包的链接——react-nestable npm