JQuery 可排序和可拖动的行为
Behaviors of JQuery sortable and draggable
我有 2 个可拖动对象 'field' 和 'container' 以及一个可排序对象 'ui-main'。我想要做的是将上面的 2 个对象拖到 'ui-main' 中,并允许将对象添加到 'container' 中,创建一个嵌套的可排序表单。
这是演示:https://jsfiddle.net/tblaziken/a2qbnygb/1/
目前javascript:
$('.ui-select .ui-select-item').draggable({
revert : "invalid",
helper: 'clone',
connectToSortable : '.ui-sortable'
});
$( ".ui-sortable" ).sortable({
connectWith: '.ui-sortable',
placeholder: 'ui-hovering'
});
问题是我只能将新对象添加或移动到 ui-main
和 2 个已存在的 ui-container
对象中,但无法对新创建的 ui-container
对象执行此操作。是什么让现有的和新创建的不同,如何解决?
对我来说,你的 jsfiddle 中的一切都按预期工作。但是,您使用克隆助手,它不能让您完全控制克隆时发生的事情。 jQuery 的 clone() 函数需要 2 个参数。
.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] )
因此,要在每个元素上都有相同的事件,您可以自己克隆它们,将两个参数都设置为 true,或者您 bind/unbind 将事件再次发送给每个新添加的对象。
我有 2 个可拖动对象 'field' 和 'container' 以及一个可排序对象 'ui-main'。我想要做的是将上面的 2 个对象拖到 'ui-main' 中,并允许将对象添加到 'container' 中,创建一个嵌套的可排序表单。
这是演示:https://jsfiddle.net/tblaziken/a2qbnygb/1/
目前javascript:
$('.ui-select .ui-select-item').draggable({
revert : "invalid",
helper: 'clone',
connectToSortable : '.ui-sortable'
});
$( ".ui-sortable" ).sortable({
connectWith: '.ui-sortable',
placeholder: 'ui-hovering'
});
问题是我只能将新对象添加或移动到 ui-main
和 2 个已存在的 ui-container
对象中,但无法对新创建的 ui-container
对象执行此操作。是什么让现有的和新创建的不同,如何解决?
对我来说,你的 jsfiddle 中的一切都按预期工作。但是,您使用克隆助手,它不能让您完全控制克隆时发生的事情。 jQuery 的 clone() 函数需要 2 个参数。
.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] )
因此,要在每个元素上都有相同的事件,您可以自己克隆它们,将两个参数都设置为 true,或者您 bind/unbind 将事件再次发送给每个新添加的对象。