我有一个用户界面,其中一些属性表示为可拖动的项目,它们可以从工具栏拖出并放在一些接收项目上,然后更新。为此我正在使用Dojo Drag and Drop。我有一些Dojo Dnd Sources,Targets,几种接受类型,一切都很好。
除了我不想将源的节点实际移动或复制到目标。当发生丢弃时,我只想激发一个事件处理程序,以便我可以修改有问题的目标,或者在UI中进行其他更新。
这样做的最佳方式是什么?
我尝试过对null创建函数的变体,在onDrop处理程序中调用cancel,从父节点中删除传递给onDrop处理程序的节点,但这些途径似乎都不起作用或可行。
感谢您的帮助。
答案 0 :(得分:0)
我刚刚编写了这个代码,可以满足您的需求。 (虽然看起来你已经尝试过类似的东西但没有用?)
// Gobble up dropped nodes
target.on(
"Drop",
lang.hitch(
target,
function( source, nodes, copy )
{
this.selectAll().deleteSelectedNodes();
}
)
);