zoukankan      html  css  js  c++  java
  • easyui datagrid 仿ext—右键

    var createGridHeaderContextMenu = function(e, field) {
    e.preventDefault();
    var grid = $(this);/* grid本身 */
    var headerContextMenu = this.headerContextMenu;/* grid上的列头菜单对象 */
    if (!headerContextMenu) {
    var tmenu = $('<div style="100px;"></div>').appendTo('body');
    var asc = $('<div iconCls="icon-asc" field="asc">升序</div>').appendTo(tmenu);
    var desc = $('<div iconCls="icon-desc" field="desc">降序</div>').appendTo(tmenu);
    var filedHTML = $('<div iconCls="icon-columns"></div>');
    var span = $('<span>显示列/隐藏列</span>');
    var spdiv = $('<div></div>');
    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-checked" field="' + fields[i] + '"/>').html(fildOption.title).appendTo(spdiv);
    } else {
    $('<div iconCls="icon-unchecked" field="' + fields[i] + '"/>').html(fildOption.title).appendTo(spdiv);
    }
    }
    span.appendTo(filedHTML);
    spdiv.appendTo(filedHTML);
    filedHTML.appendTo(tmenu);
    headerContextMenu = this.headerContextMenu = tmenu.menu({
    onClick : function(item) {
    var f = $(this).attr('field')
    var fieldProperty = $(item.target).attr('field');
    if (item.iconCls == 'icon-checked') {
    grid.datagrid('hideColumn', fieldProperty);
    $(this).menu('setIcon', {
    target : item.target,
    iconCls : 'icon-unchecked'
    });
    }
    if (item.iconCls == 'icon-unchecked') {
    grid.datagrid('showColumn', fieldProperty);
    $(this).menu('setIcon', {
    target : item.target,
    iconCls : 'icon-checked'
    });
    }
    if (item.iconCls == 'icon-asc') {
    var options = grid.datagrid('options');
    options.sortName = f;
    options.sortOrder =fieldProperty;
    grid.datagrid('reload');
    }
    if (item.iconCls == 'icon-desc') {
    var options = grid.datagrid('options');
    options.sortName = f;
    options.sortOrder =fieldProperty;
    grid.datagrid('reload');
    }
    }
    });
    }
    headerContextMenu.attr('field',field);
    headerContextMenu.menu('show', {
    left : e.pageX,
    top : e.pageY
    });
    };
    $.fn.datagrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu;
    $.fn.treegrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu;

  • 相关阅读:
    ORACLE 删除重复的数据
    Linux查看某个文件 单个字符的 个数
    通过虚拟机增加Linux的磁盘(分区容量)
    redheat7 sd 0:0:0:0: [sda] Assuming drive cache: write through(未解决)
    安装数据库Typical path for xclock: /usr/X11R6/bin/xclock 错误问题
    解决Visual Studio 2015启动慢的问题
    使用Discuz!自带参数防御CC攻击以及原理
    mysql 去除特殊字符和前后空白字符
    最新版的Chrome 69.0 设置始终开启flash而不是先询问
    DNS_PROBE_FINISHED_NXDOMAIN 问题解决
  • 原文地址:https://www.cnblogs.com/huangf714/p/6229315.html
Copyright © 2011-2022 走看看