我有一个treegrid,我只想更新一个节点及其子节点。所以我试过这样:
store.load({
node: store.getNodeById(1)
});
这会更新子节点,但不会更新节点本身。那么如何更新节点和子节点?如果它只需要对数据库的一个请求,那将是最好的。
我有一个treegrid,我只想更新一个节点及其子节点。所以我试过这样:
store.load({
node: store.getNodeById(1)
});
这会更新子节点,但不会更新节点本身。那么如何更新节点和子节点?如果它只需要对数据库的一个请求,那将是最好的。
没有任何方法可以通过配置来做到这一点,它只是作为设计工作。您可以做的是加载节点的子节点后的一个小技巧,以便操纵树节点以手动更新节点本身。
查看图片。他们表现出您期望的行为。
这在 jsfiddle 中可以正常工作:http: //jsfiddle.net/lontivero/jBTWn/3/
基本上,正如我刚才所说,这个想法是在加载孩子之后操纵树。在我的示例中,这是通过以下方式完成的:
var node = store.getNodeById(1);
store.load({
node: node,
callback: function(newRecord) {
var parent = node.parentNode;
parent.insertBefore(newRecord[0], node);
parent.removeChild(node);
},
params: {
json: Ext.JSON.encode(updated_data)
}
});
祝你好运!