编程语言
首页 > 编程语言> > javascript-jQuery UI的Sortable是否可以处理items选项的复杂选择器?

javascript-jQuery UI的Sortable是否可以处理items选项的复杂选择器?

作者:互联网

我有一个无序列表中的列表项,双击该列表项可以通过所见即所得编辑器对它进行编辑.

$('ul.mtm_section').sortable({
  disabled: true,
  distance: 10,
  items: '> li:not(:has(form))'
});

我的目标是防止列表项在编辑时被排序-也就是在替换表单元素代替内容后.

不幸的是我的项目选择器不起作用.可排序是否能够处理此类复杂的选择器?如果不是,是否还有其他聪明的方法可以禁止某些项目进行排序,也许是回调函数?

我宁愿依赖于此sortable选项,因为wysiwyg插件与jEditable紧密嵌套,并且据我所知不会打开任何事件供我使用.

使用jQuery 1.4.2和jQuery UI 1.8.1

解决方法:

jQuery UI Sortable可以接受任何选择器,但是选择器用于选择在创建可排序项时(而不是在拖动开始时)可排序的项.如果更改DOM,它仍会记住创建可排序项时哪些项可排序.

如果ui.item包含< form&gt ;,则应该能够从sortstart返回false,但是这似乎暂时不起作用.相反,您可以使用此功能,该功能可以:

$('ul').sortable({
  items: '> li',
  cancel: 'li:has(form)'
});

标签:jeditable,jquery-ui,jquery-ui-sortable,javascript,jquery
来源: https://codeday.me/bug/20191210/2098689.html