上一篇用tree panel的root的中的节点的id值,人为的用其中的字符串的内容,区分是否是叶子节点的做法,是十分外行的。
正确的做法是:(被注释掉的部分是外行的写法)
agentTreeItemClick: function(dataview, record, item, index, e, eOpts) {
/*
var rid = "uselessStr";
rid = record.raw.id;
if (rid.indexOf("agent") != -1){
//包含agent字符串,所以什么也不做
//Ext.Msg.alert("菜单信息","record.raw.id:"+record.raw.id+" record.raw.text:"+record.raw.text);
}else{
//不包含agent字符串,所以显示
Ext.Msg.alert("菜单信息","record.raw.id:"+record.raw.id+" record.raw.text:"+record.raw.text+" record.raw.leaf:"+record.raw.leaf);
}
// dataview.getItemId()显示treePanel拥有的view的itemid
*/
var bsign = record.raw.leaf;
if(bsign===true){
Ext.Msg.alert("测试leaf","record.raw.id:"+record.raw.id+" record.raw.text:"+record.raw.text+" record.raw.leaf:"+record.raw.leaf);
}
}
也就是说在上述方法fn的方法体中,使用参数record,获取这个值record.raw.leaf,来判断是否为叶节点。