繁体   English   中英

强制两个jQuery UI可排序列表之间的顺序

[英]Force order between two jquery UI sortable lists

之前从未有人问过这个问题,这使我感到惊讶,至少我没有找到它。

我有多个列表或元素都使用jQuery UI sortable连接在一起。 一切都按照文档所说的进行,但是我想使列表强制排序。 例如,当加载每个列表时,将按日期对项目进行排序。 将项目从列表1移到列表2时,无论日期如何,都可以将其放置在列表中的任何位置。 同样,您可以在同一列表中移动项目,以使它们过时。

有没有一种方法可以使它计算日期顺序并在移动项目后按正确的顺序渲染项目?

将某项从一个列表移到另一个列表后,它将执行ajax请求以将该项目保存到该列表中,一种可行的解决方案是该请求按排序顺序返回该列表,然后重新呈现该列表,但是不会由于您已经拥有所有数据,因此这似乎是一种特别干净的方法。

有更简单/更好的方法吗? 如果还可以防止在同一列表内重新排序,那将是理想的选择。

谢谢。

JQuery Sortable无法处理您要实现的行为。 你必须自己做。 我认为接收eventHandler是一个很好的起点。 您可以使用ui.item.prev()和ui.item.next()来检索上一个和下一个元素,然后检查插入点是否符合您的要求,然后将元素插入该位置或将该元素恢复为旧列表/位置($(ui.sender).sortable(“ cancel”);)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM