1

我有两个树面板,我想在它们之间拖放。我知道有一个插件可以解决这个问题,但是我希望它以某种方式运行。在我的树形面板中,我展示了树的根节点,然后是它的所有子节点。默认的 DD 允许用户在树上的不同级别删除项目(即根的兄弟,根的孩子),我希望所有项目都是根的孩子以保持一致性。我怎样才能做到这一点,以便将任何拖入树形面板的项目关联为根的子项而不是根的兄弟项。原因:对于不了解此功能如何工作的用户,任一方向的一毫米可以将项目从兄弟变为子项,反之亦然。

另外,我想要它,所以我只能拖走那些孩子,并且根不能移动,如果可能的话。

4

1 回答 1

1

是的,有可能。您可以在目标 Tree 面板的树视图上监听 'beforedrop' 事件并实现您想要的。像这样 的东西http://jsfiddle.net/EYtnk/1/ .. beforedrop 事件的参数之一是被拖动的节点。您可以检查它是否是源树的根节点,然后“返回 false;”

PS:在示例中,我只是为两棵树使用了相同的存储......所以节点被添加到两边。

于 2012-08-14T09:49:37.867 回答