`
sphsyv23
  • 浏览: 84483 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

为easyui的datagrid、treegrid增加表头菜单,用于显示或隐藏列

阅读更多

在线演示:http://sshe.btboys.com

将下面代码放到easyui.min.js后面就行,一般我们自己新建立一个xxx.JS,放到里面

<script src="easyui.min.js"></script>

<script src="xxx.js"></script>

 

/**
 * @author 孙宇
 * 
 * @requires jQuery,EasyUI
 * 
 * 为datagrid、treegrid增加表头菜单,用于显示或隐藏列,注意:冻结列不在此菜单中
 */
var createGridHeaderContextMenu = function(e, field) {
	e.preventDefault();
	var grid = $(this);/* grid本身 */
	var headerContextMenu = this.headerContextMenu;/* grid上的列头菜单对象 */
	if (!headerContextMenu) {
		var tmenu = $('<div style="width:100px;"></div>').appendTo('body');
		var fields = grid.datagrid('getColumnFields');
		for ( var i = 0; i < fields.length; i++) {
			var fildOption = grid.datagrid('getColumnOption', fields[i]);
			if (!fildOption.hidden) {
				$('<div iconCls="icon-ok" field="' + fields[i] + '"/>').html(fildOption.title).appendTo(tmenu);
			} else {
				$('<div iconCls="icon-empty" field="' + fields[i] + '"/>').html(fildOption.title).appendTo(tmenu);
			}
		}
		headerContextMenu = this.headerContextMenu = tmenu.menu({
			onClick : function(item) {
				var field = $(item.target).attr('field');
				if (item.iconCls == 'icon-ok') {
					grid.datagrid('hideColumn', field);
					$(this).menu('setIcon', {
						target : item.target,
						iconCls : 'icon-empty'
					});
				} else {
					grid.datagrid('showColumn', field);
					$(this).menu('setIcon', {
						target : item.target,
						iconCls : 'icon-ok'
					});
				}
			}
		});
	}
	headerContextMenu.menu('show', {
		left : e.pageX,
		top : e.pageY
	});
};
$.fn.datagrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu;
$.fn.treegrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu;
 


  • 大小: 43.3 KB
3
2
分享到:
评论
1 楼 itlive2010 2014-03-27  
  功能很好。。。

相关推荐

    easyui datagrid 动态隐藏显示列

    jquery easyui 扩展 datagrid 自定义动态隐藏显示列

    easyui-treegrid冻结右侧列插件.zip

    1. **EasyUI TreeGrid**: EasyUI TreeGrid 结合了 Tree 和 Grid 的特性,可以展示层次结构的数据,并支持多列显示、排序、筛选等功能。它是 EasyUI 库中的一个重要组件,常用于管理复杂结构的数据。 2. **冻结列...

    Easyui-DataGrid表头拖动效果

    UI设计在一个系统中的重要性是不容忽视的,我们开发人员要做到:让用户去控制计算机,而不是计算机控制用户;... Easyui-Datagrid—表头灵活显示http://blog.csdn.net/u010293698/article/details/47956865

    easyui datagrid 表格 打印

    在IT领域,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如数据分页、排序、筛选等。当我们需要将Datagrid中的数据进行打印时,可能会遇到一些挑战,因为通常默认的浏览器打印功能...

    解决EasyUIdataGrid列比较多,无数据,列展现不全

    在使用EasyUI框架进行前端开发的过程中,可能会遇到dataGrid组件在数据为空时列显示不完整的问题。这不仅影响用户体验,也降低了系统的可用性。本文将详细介绍如何解决当dataGrid列较多且无数据显示不全的情况,并...

    easyui datagrid 增加鼠标悬停弹窗事件

    在本示例中,我们关注的是如何在EasyUI的Datagrid组件上添加一个特殊功能:当鼠标悬停在某一行时,弹出一个窗口显示该行的关键信息,例如用于图片预览。以下是对这个知识点的详细解释: 1. **EasyUI Datagrid**: ...

    EasyUI DataGrid过滤用法实例

    `filter.png` 文件可能是用于显示过滤图标或操作按钮的图像资源。在 DataGrid 中,启用过滤后,每列标题上会出现一个过滤图标,用户点击该图标可以打开过滤菜单,选择过滤条件。 `datagrid-filter.html` 文件则包含...

    jquery-easyui拓展之datagrid复合表头列锁定/解锁和列隐藏/显示

    http://blog.csdn.net/tianxiawudi0720/article/details/47401399

    easyUI datagrid rownumber自适应宽度扩展JS

    easyUI datagrid 自动调整行号大小

    easyui datagrid标题列宽度自适应

    标题 "easyui datagrid标题列宽度自适应" 涉及到的是JavaScript库EasyUI中的一个功能特性,它主要用于Web应用程序的数据展示。EasyUI是一个基于jQuery的轻量级框架,提供了一系列易于使用的UI组件,包括datagrid,...

    easyui datagrid 右冻结

    标题中的“easyui datagrid 右冻结”是指在使用EasyUI框架开发Web应用程序时,针对datagrid组件实现右侧列固定的功能。EasyUI是一个基于jQuery的UI库,提供了丰富的组件,包括datagrid,它是一个用于展示表格数据的...

    datagrid 多表头及动态生成的实现

    本文的目标是通过一个具体的案例来展示如何使用JQuery EasyUI的datagrid组件来实现多表头和根据数据库动态生成列的需求。 #### 解决方案 ##### 1. 后端逻辑准备 为了实现前端表格能够根据数据库内容动态变化,...

    Easyui Datagrid 实现行过滤[模糊查询]

    在IT领域,尤其是在Web开发中,EasyUI是一个广泛使用的JavaScript框架,它基于jQuery,提供了丰富的UI组件,如Datagrid,用于构建数据展示和管理的表格。在本篇中,我们将深入探讨如何在EasyUI的Datagrid中实现行...

    easyui datagrid在编辑状态下更新列的值

    最后,对于“easyui-datagrid-editor”这个压缩包文件,它可能包含了示例代码、样式文件或其他资源,帮助开发者理解并实现编辑状态下Datagrid列值的更新功能。如果需要进一步的帮助,可以查看该文件的内容或查阅...

    easyui的Treegrid扩展

    在传统的TreeGrid中,数据通常是以树状结构展示,每一行都可以展开或折叠,显示或隐藏子节点。然而,通过这个扩展,我们可以实现更丰富的交互功能,比如让多个TreeGrid之间可以进行数据的拖放操作。 首先,让我们...

    easyui datagrid 数据导出到Excel

    在IT行业中,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如排序、分页、过滤等。在实际工作中,我们经常需要将这些展示的数据导出到Excel文件,以便进行进一步的分析或存储。下面...

    JS EasyUI DataGrid动态加载数据

    JS EasyUI DataGrid是一款基于jQuery和EasyUI框架的数据表格组件,它提供了丰富的功能,如数据分页、排序、过滤和自定义操作等。在实际应用中,动态加载数据是DataGrid的一个重要特性,允许用户在需要时加载更多的...

    DataGrid表头合并和单元格内容合并-升级版

    在.NET开发环境中,DataGrid控件是用于展示数据表格的常用组件,特别是在Windows Forms和WPF应用程序中。这个“DataGrid表头合并和单元格内容合并-升级版”主题主要聚焦于如何在DataGrid中实现复杂的表头和单元格...

    easyui datagrid editor回车切换单元格示例,可参考

    easyui datagrid editor回车切换单元格示例,适合熟悉easyui但又不懂如何做的人员,可能参考一下源码JS。

    easyui datagrid中实现上下左右、回车切换单元格

    easyui datagrid中实现上下左右、回车切换单元格easyui datagrid中实现上下左右、回车切换单元格easyui datagrid中实现上下左右、回车切换单元格

Global site tag (gtag.js) - Google Analytics