我有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
这样做。是什么让现有的和新创造的不同以及如何解决它?
答案 0 :(得分:2)
对我来说,jsfiddle中的所有内容都按预期工作。但是,您使用克隆帮助程序,它无法完全控制克隆时发生的情况。 jQuery的clone()函数需要2个参数。
.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] )
因此,要在每个元素上拥有相同的事件,您可以自己克隆它们,将两个参数设置为true,或者将事件再次绑定/取消绑定到每个新添加的对象。