为lazyTreeGrid添加右键菜单

3 篇文章 0 订阅

在完成个人任务显示的时候需要 为lazyTreeGrid添加右键菜单,而lazyTreeGrid不支持右键菜单,但是在看lazyTreeGrid.js的时候发现它是继承的TreeGrid.js,treeGrid.js继承的dataGrid.js,而dataGrisd是可以使用右键菜单的。

设置grid的为lazyTreeGrid,为其设置相关属性,不过这里面没有与右键菜单有关的属性。

<div id="gridDiv3" style="display: none;font-size:12px;height:100%;" dojoType="dojox.grid.LazyTreeGrid" 
	treeModel="DG.treeModel1" canSort=false expendoCell ="0" colSpans="{0: [{start: 1,end: 20,primary: 12}]}"
	structure="DG.mixedWorkItemslayout" rowSelector="0px" escapeHTMLInData=false>
</div>


右键弹出的菜单

<div dojoType="dijit.Menu" id="gridMenu" style="display: none;" >
	<div id="openMenuItem" onClick="Menu.openTask" dojoType="dijit.MenuItem" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'" style="height: 24px !important;">打开任务</div>
<!-- 	<div dojoType="dijit.MenuSeparator"></div> -->
	<div id="historyMenuItem" onClick="Menu.showTaskHistory" dojoType="dijit.MenuItem" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'" style="height: 24px !important;" >任务历史</div>
	<div id="launchWorkflowMenuItem" onClick="launchWorkflowByCopy" dojoType="dijit.MenuItem" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'" style="height: 24px !important" >复制发起新任务</div>
	<!--div dojoType="dijit.MenuSeparator"></div>  -->
	<div id="classifyMenuItem" onClick="Menu.showClassifyDlg" disabled= true dojoType="dijit.MenuItem" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'" style="height: 24px !important" >任务分类</div>
	<div id="deleteClassifyMenuItem" onClick="Menu.deleteClassifyItem" disabled= true dojoType="dijit.MenuItem" style="height: 24px !important"οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'">从分类中移除任务</div>
	<!--div dojoType="dijit.MenuSeparator"></div> -->
	<div id="recallTaskMenuItem" onClick="Menu.recallTaskApplication();" dojoType="dijit.MenuItem" style="height: 24px !important" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'" disabled= true>召回申请</div>
    <!--div dojoType="dijit.MenuSeparator"></div>-->
    <div id="lockMenuItem" onClick="Menu.lockTask" dojoType="dijit.MenuItem" style="height: 24px !important" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'"  disabled= true>任务加锁</div>
    <div id="unlockMenuItem" onClick="Menu.unlockTask" dojoType="dijit.MenuItem" style="height: 24px !important" οnmοuseοver="this.className='gridMenuCssOver'" οnmοuseοut="this.className='gridMenuCssOut'" disabled= true >任务解锁</div>
</div>



在所有控件ready的时候为grid3加载属性

dojo.ready( function() {        
        var grid3 = dijit.byId("gridDiv3");
	window["gridMenu"] = dijit.byId("gridMenu");
	var gridMenu = dijit.byId("gridMenu");
	gridMenu.bindDomNode(grid3.domNode);
	grid3.onCellContextMenu = function(e){
		//右键选中
		grid3.selection.select(e.rowIndex);
		//确定右键弹出菜单的各种情况
		DG.setGridMenuStatus();
		cellNode = e.cellNode;
	};
          });


最后效果为


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值