if(me.paramObj.addType=="addNext"){//标准分类添加下一级
//设置父节点为非叶子节点
var nodeData = node.data;
nodeData.leaf = false;
node.updateInfo(true, nodeData);
//展开当前node
var store=tree.getStore();
store.load({node:node});
}else if(me.paramObj.addType=="addNow"){//标准分类添加同级
//展开父级node
var store=tree.getStore();
store.load({node:node.parentNode});
//再选中当前节点
tree.getSelectionModel().select(node);
}else{
if(me.controlType=='treeEdit'){//修改标准分类
//更新当前选中的node名称
var nodeData = node.data;
nodeData.text = data.name;//取得后台返回的修改后的名称
node.updateInfo(true, nodeData);
}
}
发现有时候新添加的noded的parentNode=null。很无语,后来改成appendChild函数,不用节点的局部刷新了。
新做的代码如下:
if(me.paramObj.addType=="addNext"){//标准分类添加下一级
//设置父节点为非叶子节点
var newnode = {
id:data.id,
text:data.text,
iconCls:"icon-note",
leaf:true
};
node.appendChild(newnode);
node.expand();
}else if(me.paramObj.addType=="addNow"){//标准分类添加同级
var newnode = {
id:data.id,
text:data.text,
iconCls:"icon-note",
leaf:true
};
node.parentNode.appendChild(newnode);
}else{
if(me.controlType=='treeEdit'){//修改标准分类
//更新当前选中的node名称
var nodeData = node.data;
nodeData.text = data.text;//取得后台返回的修改后的名称
node.updateInfo(true, nodeData);
}
}