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

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

/**
 * @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;
时间: 2024-10-12 21:20:44

[Easyui - Grid]为easyui的datagrid、treegrid增加表头菜单,用于显示或隐藏列的相关文章

为datagrid、treegrid增加右键表头菜单,用于显示或隐藏列,注意:冻结列不在此菜单中

1 var createGridHeaderContextMenu = function(e, field) { 2 e.preventDefault(); 3 var grid = $(this);/* grid本身 */ 4 var headerContextMenu = this.headerContextMenu;/* grid上的列头菜单对象 */ 5 if (!headerContextMenu) { 6 var tmenu = $('<div style="width:100

ScrollView增加标题并且控制显示和隐藏

转载请著名出处: http://blog.csdn.net/forwardyzk/article/details/46636997 我们知道XLIstview有上拉刷新和下拉加载,现在模拟一下XlistView的下拉刷新,使Scroller也有标题,通过滑动控制标题的显示和隐藏. 我们先来看一下效果: 首先创建标题View scroller_header.xml <?xml version="1.0" encoding="utf-8"?> <Lin

EasyUI Grid和Tree脚本

Grid,Tree脚本: 1 /* 2 * 文 件 名:EasyUICommon.js 3 * 功能描述:EasyUIJs函数 4 * 5 * 版 权:Copyright 2014-2020, ZhiKang Wu 6 * 版 本:V1.0.0 7 * 日 期:2014-10-23 8 * 9 */ 10 /* 11 * 参数说明(固定参数): 12 * Grid按钮ID:(增加)btn_add,(修改)btn_edit,(删除)btn_del: 13 * Dialog窗体内ID:(窗体)Ope

如何用easyui+JAVA 实现动态拼凑datagrid表格(续)

前面一段时间写了一篇文章: 如何用easyui+JAVA 实现动态拼凑datagrid表格 这篇文章的话,效果是可以实现,但是经过我反复试验,还是存在一些问题的. 今天这篇文章就是向大家介绍下如何避免和解决这些问题. 问题如下: 这个TEMP值其实就是上面文章提到的z1,z2,z3,z4的值,也就是说,每次进行each循环,都会查出不同的值,并返回,但是事实并不是这样的 这个TEMP返回的是EACH循环以后的最后一次的值. 记住,EACH循环本身就是一个封闭的,不会循环一次返回一个值,而是让前面

Easyui Datagrid 修改显示行号列宽度

EasyUI中Datagrid的第一列显示行号,可是如果数据量大的的时候,显示行号的那一列数据会显示不完全的. 可以通过修改Datagrid的样式来解决这个问题,在样式中加入下面这个样式,就可以自己修改显示行号列的宽度了 .datagrid-header-rownumber,.datagrid-cell-rownumber{ width:40px; }

SSH返回json格式数据到easyui grid展示

原文:SSH返回json格式数据到easyui grid展示 源代码下载地址:http://www.zuidaima.com/share/1550463757290496.htm 比较简单的东西里面有一个登录一个返回json数据 一看就明白但是给新手看很好,分享一下.刚知道还能放图...  

Easyui datagrid 显示隐藏列

html: <div style="float: left; width: 1450px; height:auto;  "> <table id="List" class="easyui-datagrid" title="基站信息列表" width="1450px" style="height:580px;" data-options="rownumbers:

easyui datagrid 列显示和隐藏

//当查询IT基础设施的时候隐藏'STAFF_ID'.'ITSM_STAFF_ID' if($("input[name='currentstate']").val()==2){ $('#ordertable').datagrid('hideColumn','STAFF_ID'); $('#ordertable').datagrid('hideColumn','ITSM_STAFF_ID'); }else{ $('#ordertable').datagrid('showColumn','

WPF datagrid 动态增加列

DataGrid动态增加列 <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="