1: var tree = new Ext.tree.TreePanel({
2:
3: … //此处省略
4:
5: enableDrop: true, //允许Drop //enableDD:true, //允许Drag & Drop
6:
7: dropConfig:{
8: ddGroup: 'GridDD',// 从Grid到Tree。如果是Tree内部节点拖动,使用'TreeDD'
9:
10: dropAllowed: true,
11: notifyDrop: function(source, e, data) {
//这部分是我实现的从grid拖动数据到tree节点,现在我想获得tree的node却不知道怎么获得
19: }
……
参考了别人的一段代码,可以实现拖动,而且鼠标拖动释放后可以执行操作,但是不知道如何获得tee的node,请大家帮助解答一下
或者有其他可以参考的从grid到tree的拖动方式吗?谢谢
刚试了下,不用那么麻烦.不需要notifyDrop.
直接
[code="javascript"]
tree.on('beforenodedrop',function(e){
var node = e.target;
console.log('xx',e,e.target,e.target.getPath())
return true;
})
[/code]
其中e的内容是:
tree - The TreePanel
target - The node being targeted for the drop
data - The drag data from the drag source
point - The point of the drop - append, above or below
source - The drag source
rawEvent - Raw mouse event
dropNode - Dropped node(s).
试下
// first try to find the drop node
var dropNode = data.node || (dd.getTreeNode ? dd.getTreeNode(data, targetNode, point, e) : null);
来自Ext.tree.TreeDropZone的源码