从两个表中取出数据 显示到页面上,使用数据库的id作为node的节点
节点就会因为id重复而无法正常的显示
重写TreeLoader的 getParams方法
Ext.ns("XG.Control.BaseAyncTreeLoader");
XG.Control.BaseAyncTreeLoader=Ext.extend(Ext.tree.TreeLoader,{
constructor:function(config){
XG.Control.BaseAyncTreeLoader.superclass.constructor.call(this,config);
},
getParams: function(node){
var buf = [], bp = this.baseParams;
if(this.directFn){
//buf.push(node.attributes.id);
buf.push(node.attributes.treeid);
if(bp){
if(this.paramOrder){
for(var i = 0, len = this.paramOrder.length; i < len; i++){
buf.push(bp[this.paramOrder[i]]);
}
}else if(this.paramsAsHash){
buf.push(bp);
}
}
return buf;
}else{
for(var key in bp){
if(!Ext.isFunction(bp[key])){
buf.push(encodeURIComponent(key), "=", encodeURIComponent(bp[key]), "&");
}
}
//buf.push("node=", encodeURIComponent(node.attributes.id));
buf.push("node=", encodeURIComponent(node.attributes.treeid));
return buf.join("");
}
}
});
注释掉选中行,这样发送请求时就是node使用"treeid"属性了