easyUI datagrid 表格 表头添加菜单,实现可选列。
2014-05-16 15:35
585 查看
拿其他人的code,稍微改进了下,实现更加美观的效果,方便自定义选中图标。
/** * @author 孙宇 * * @requires jQuery,EasyUI * * 为datagrid、treegrid增加表头菜单,用于显示或隐藏列,注意:冻结列不在此菜单中 */ var createGridHeaderContextMenu = function(e, field) { e.preventDefault(); var grid = $(this);/* grid本身 */ var headerContextMenu = this.headerContextMenu;/* grid上的列头菜单对象 */ var okCls = 'tree-checkbox1';//选中 var emptyCls = 'tree-checkbox0';//取消 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="'+okCls+'" field="' + fields[i] + '"/>').html(fildOption.title).appendTo(tmenu); } else { $('<div iconCls="'+emptyCls+'" 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 == okCls) { grid.datagrid('hideColumn', field); $(this).menu('setIcon', { target : item.target, iconCls : emptyCls }); } else { grid.datagrid('showColumn', field); $(this).menu('setIcon', { target : item.target, iconCls : okCls }); } } }); } headerContextMenu.menu('show', { left : e.pageX, top : e.pageY }); }; $.fn.datagrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu; $.fn.treegrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu;
相关文章推荐
- easyui datagrid 实现表头灵活展示(添加表头菜单,右键表头进行展示或隐藏)
- easyui tree datagrid动态添加表头和表格数据,动态弹出框,修改和删除按钮
- ASP.NET基础教程-DataGrid表格控件-DataGrid实现双表头
- easyui datagrid实现批量添加、删除、修改,列多对多动态配比
- jQuery-easyUI的使用:datagrid实现可编辑表格
- 扩展EasyUI datagrid 增加表头右键菜单功能,可动态对列进行显示和隐藏
- easyui-tree实现及针对不同结点添加不同右键菜单
- easyui datagrid中添加右键菜单事件
- 《EasyUI》——给DataGrid动态绑定表头和数据,实现表头与数据的真正解耦
- 如何用easyui+JAVA 实现动态拼凑datagrid表格
- 一步步实现 easyui datagrid表格宽度自适应,效果非常好
- easyui的datagrid、treegrid增加表头菜单,用于显示或隐藏列
- EasyUI datagrid表格双击操作的实现
- DataGrid实现(上下左右移动,添加删除行列,导出,表头拖动)
- easyui datagrid中单击添加菜单事件
- 基于asp.net + easyui框架,一步步学习easyui-datagrid——实现添加、编辑、删除(三)
- 基于asp.net + easyui框架,一步步学习easyui-datagrid——实现添加、编辑、删除(三)
- EasyUI DataGrid表格分页效果实现—笔记
- DataGrid实现(上下左右移动,添加删除行列,导出,表头拖动)
- EasyUi datagrid 实现表格分页