我在extjs4工作。我有网格与复选框选择模型。网格显示文件和文件夹。如果文件夹被选中,那么我想隐藏一些菜单。所以编写代码为 -
selectionchange:function( model, selected, eOpts ){
var centralPanel = me.up();
var actionBtn = centralPanel.queryById('libraryactionBtn');
if(selected.length > 1) {
actionBtn.show();
//var i=0;
for(i=0;i<selected.length;i++)
{
if(selected[i].data.isLeaf)
{
centralPanel.queryById('library-action-menu-view').hide();
centralPanel.queryById('library-action-menu-viewOrAddTag').hide();
centralPanel.queryById('library-action-menu-viewOrAddNotes').hide();
centralPanel.queryById('library-action-menu-copyToCompaign').hide();
centralPanel.queryById('library-action-menu-copyToProject').hide();
centralPanel.queryById('library-action-menu-sendLink').hide();
centralPanel.queryById('library-action-menu-addtofavorite').hide();
centralPanel.queryById('library-action-menu-downloadItem').hide();
}
}
} else {
actionBtn.hide();
}
其中selected.data.isLeaf对于文件夹为false。它只是第一次正确执行。下次当我选择文件时,还有它的文件隐藏菜单。如果取消选择文件夹,那么它的隐藏菜单也是如此。那么我需要做哪些修改
答案 0 :(得分:0)
首先,我没有看到任何显示菜单的代码。你只是隐藏菜单。
其次确保选择的[i] .data.isLeaf为false而不是“false”。