zoukankan      html  css  js  c++  java
  • RDIFramework.NET框架Web中datagrid与treegrid控件自动生成右键菜单与列标题右键菜单

      在实际应用中常可以看到数据展示控件有右键菜单的功能,对应的列标题也可以右键弹出快捷菜单设置指定列的显示与隐藏等功能。在我们的RDIFramework.NET Web框架中,只要是使用了EasyUI的DataGrid与TreeData控件我们已经做了扩展,所有datagrid与treegrid控件都自动拥有了列标题右键弹出快捷菜单设置指定列的显示与隐藏的功能。

      1、对于datagrid数据列表区域的右键弹出菜单只需要设置EasyUI的“onRowContextMenu”属性为:pageContextMenu.createDataGridContextMenu即可。

      2、对于treegrid数据列表区域的右键弹出菜单只需要设置EasyUI的“onContextMenu”属性为:pageContextMenu.createTreeGridContextMenu即可。

      后面会给出参考代码。下面就是两个右键菜单的展示效果。

     

      DataGrid参考Js代码如下:

    $('#list').datagrid({
    	url: actionURL + 'GridPageListJson',
    	toolbar: '#toolbar',
    	title: "产品列表",
    	iconCls: 'icon16_table',
    	 winSize.width,
    	height: winSize.height,
    	nowrap: false, //折行
    	rownumbers: true, //行号
    	striped: true, //隔行变色
    	idField: 'ID',//主键
    	singleSelect: true, //单选
    	sortName: 'CREATEON',
    	sortOrder: 'DESC',
    	onRowContextMenu: pageContextMenu.createDataGridContextMenu,
    	onDblClickRow:function(rowIndex, rowData){
    		document.getElementById('a_edit').click();
    	},
    	frozenColumns: [[
    		{ field: 'ck', checkbox: true },
    		{ title: '产品编码', field: 'PRODUCTCODE',  150 },
    		{ title: '产品名称', field: 'PRODUCTNAME',  300 }
    	]],
    	columns: [[
    		{ title: '主键', field: 'ID',  120, hidden: true },		        
    		{ title: '产品型号', field: 'PRODUCTMODEL',  150 },
    		{ title: '产品规格', field: 'PRODUCTSTANDARD',  75 },
    		{ title: '产品类别', field: 'PRODUCTCATEGORY',  70 },
    		{ title: '产品单位', field: 'PRODUCTUNIT',  63 },
    		{ title: '基准价', field: 'MIDDLERATE',  60 },
    		{ title: '基准系数', field: 'REFERENCECOEFFICIENT',  60 },
    		{ title: '单价', field: 'PRODUCTPRICE',  60 },
    		{ title: '批发价', field: 'WHOLESALEPRICE',  60 },
    		{ title: '促销价', field: 'PROMOTIONPRICE',  60 },
    		{ title: '内部价', field: 'INTERNALPRICE',  60 },
    		{ title: '特别价', field: 'SPECIALPRICE',  60 },
    		{
    			title: '作废标志', field: 'ENABLED',  56,
    			align: 'center',
    			formatter: function (v, d, i) {
    				return '<img src="../../Content/Styles/icon/bullet_' + (v ? "tick.png" : "minus.png") + '" />';
    			}
    		},
    		{ title: '产品描述', field: 'PRODUCTDESCRIPTION',  200 }
    	]],
    	pagination: true,
    	pageSize: 20,
    	pageList: [20, 10, 30, 50],
    	onLoadSuccess: function (data) {
    		var panel = $(this).datagrid('getPanel');
    		var tr = panel.find('div.datagrid-body tr');
    		refreshCellsStyle(tr);
    		var trHead = panel.find('div.datagrid-header tr');
    		trHead.each(function () {
    			var tds = $(this).children('td');
    			tds.each(function () {
    				$(this).find('span,div').css({ "font-size": "14px" });
    			});
    		});
    	}
    });
    

      TreeGrid参考Js代码如下:

    $('#organizeGrid').treegrid({
    	toolbar: '#toolbar',           
    	 winsize.width,
    	height: winsize.height,
    	nowrap: true,
    	rownumbers: true,
    	animate: true,
    	resizable: true,
    	collapsible: false,
    	onContextMenu: pageContextMenu.createTreeGridContextMenu,
    	url: '/FrameworkModules/OrganizeAdmin/GetOrganizeTreeJson',
    	idField: 'Id',
    	treeField: 'FullName',
    	onDblClickRow:function(row){
    		document.getElementById('btnEdit').click();
    	},
    	frozenColumns: [[
    		{ title: '名称', field: 'FullName',  200 },
    		{ title: '编码', field: 'Code',  100 }
    	]],
    	columns: [[
    		{ title: '简称', field: 'ShortName',  120 },
    		{ title: '主负责人', field: 'Manager',  70, align: 'center' },
    		{ title: '电话', field: 'OuterPhone',  100, align: 'center' },
    		{ title: '传真', field: 'Fax',  100, align: 'center' },
    		{ title: '有效', field: 'Enabled',  50, align: 'center', formatter: imgcheckbox },
    		{ title: '排序', field: 'SortCode',  80, align: 'center' },
    		{ title: '备注', field: 'Description',  300 }
    	]]
    });
    

      

         相关文章列表:

       RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录

     

      一路走来数个年头,感谢RDIFramework.NET框架的支持者与使用者,大家可以通过下面的地址了解详情。

          RDIFramework.NET官方网站:http://www.rdiframework.net/

          RDIFramework.NET官方博客:http://blog.rdiframework.net/

          同时需要说明的,以后的所有技术文章以官方网站为准,欢迎大家收藏!

          RDIFramework.NET框架由专业团队长期打造、一直在更新、一直在升级,请放心使用! 

           欢迎关注RDIFramework.net框架官方公众微信微信号:guosisoft),及时了解最新动态。

           扫描二维码立即关注

  • 相关阅读:
    oracle 10g正则表达式REGEXP_LIKE用法
    impdp时出现ORA-39125错误的解决方法
    使用rman恢复备份集到不同的主机上
    ORA-01110: data file 1: '/opt/ora10g/oradata/orcla/system01.dbf'错误
    Oracle模拟文件损坏BBED
    RMAN进行基于数据块的恢复
    转:Java中Image的水平翻转、缩放与自由旋转操作
    hue耗流量优化
    解决hue/hiveserver2对于hive date类型显示为NULL的问题
    解决kylin sync table报错:MetaException(message:java.lang.ClassNotFoundException Class org.apache.hive.hcatalog.data.JsonSerDe not found
  • 原文地址:https://www.cnblogs.com/huyong/p/5523276.html
Copyright © 2011-2022 走看看