天天看點

ext的treepanel的item判斷是否為leaf

上一篇用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,來判斷是否為葉節點。

繼續閱讀