js代码

//动态加载数据表格
function InitData() {
$('#grid').datagrid({
url: '/Home/Query?r=' + Math.random(), //数据接收URL地址
method: 'GET',
iconCls: 'icon-view', //图标
fit: false, //自动适屏功能
nowrap: true,
autoRowHeight: false, //自动行高
autoRowWidth: true,
striped: true,
collapsible: false,
remoteSort: true,
idField: 'id', //主键值
pagination: true, //启用分页
pageSize: 20,
pageList: [10, 20, 50, 100, 500, 1000],
rownumbers: false, //显示行号
multiSort: true, //启用排序
sortable: true, //启用排序列
fitcolumns: true,
queryParams: $("#searchform").form2json(), //搜索条件查询
singleSelect: true,
loadMsg: '数据加载中,请稍后...',
toolbar: '#divtoolbar',
onRowContextMenu: onRowContextMenu, //右键。[表头(tab)右键onHeaderContextMenu,树形(tree)右键onContextMenu]
onHeaderContextMenu: function(e, field) { //表头右键。选择要显示的列
e.preventDefault();
if (!cmenu) {
createColumnMenu();
}
cmenu.menu('show', {
left: e.pageX,
top: e.pageY
});
}
});
} var cmenu;
//表头右键菜单
function createColumnMenu() {
cmenu = $('<div/>').appendTo('body');
cmenu.menu({
onClick: function(item) {
if (item.iconCls == 'icon-ok') {
$('#grid').datagrid('hideColumn', item.name);
cmenu.menu('setIcon', {
target: item.target,
iconCls: 'icon-empty'
});
} else {
$('#grid').datagrid('showColumn', item.name);
cmenu.menu('setIcon', {
target: item.target,
iconCls: 'icon-ok'
});
}
}
});
var fields = $('#grid').datagrid('getColumnFields');
for (var i = 0; i < fields.length; i++) {
var field = fields[i];
var col = $('#grid').datagrid('getColumnOption', field);
cmenu.menu('appendItem', {
text: col.title,
name: field,
iconCls: 'icon-ok'
});
}
} //添加右击菜单内容
function onRowContextMenu(e, rowIndex, rowData) {
e.preventDefault();
$(this).datagrid('selectRow', rowIndex); //选中当前行
$('#mm').menu('show', {
left: e.pageX,
top: e.pageY
});
}

html代码

 <div id="mm" class="easyui-menu" style="width: 100px;">
<div onclick="add()" data-options="iconCls:'icon-add'">添加</div>
<div onclick="print()" data-options="iconCls:'icon-print'">打印</div>
<div onclick="reload()" data-options="iconCls:'icon-reload'">刷新</div>
@*<div class="menu-sep"></div>*@ //分割线
</div>

至此大功初成。

EasyUI datagrid添加右键菜单项的更多相关文章

  1. java cef3 禁止右键菜单项

    如下图所示,在context_menu_handler.cpp中ContextMenuHandler::OnBeforeContextMenu添加以下代码即可: ){ model->Clear( ...

  2. JCEF 如何修改右键菜单项(JCEF在右键菜单中添加开发者选项-show dev tools)

    需求: 在界面的右键事件中添加一个打开开发者选项的菜单(Show Dev Tools) 所以我们可以看到的是在界面上右键,会有默认的一些菜单项(前进,后退,打印,查看源码),而这些功能并不一定是我们需 ...

  3. Datagrid添加右键菜单 标签: 三层EasyUI 2015-08-14 19:57 1029人阅读 评论(22)

    最近的一个项目前台使用的EasyUI,每个界面都有DataGrid控件,按照我们的想法,应该做出来的效果是单击选中,双击可编辑,当然右键也应该出现这些菜单按钮,想的挺好,那么该如何实现呢?一开始不知道 ...

  4. DevExpress实用心得:XtraGridControl动态添加右键菜

    在使用GridControl的时候经常需要添加右键菜单. 一般的做法是自己创建菜单项,然后注册GridView的Mouse-Click事件,然后Show出定义好的菜单. 但是涉及到一些单击事件会收到编 ...

  5. 自定义 Windows 右键菜单项

    注:本文涉及到注册表操作,不认识请不要随意修改! 右键菜单项储存在注册表 HKEY_CLASSES_ROOT 中,一般各种程序的右键菜单项都可以在此项下面找到: 添加右键菜单项 右键单击 shell, ...

  6. EasyUI DataGrid 添加 Footer

    做后台管理界面时,EasyUI 的 DataGrid 经常会被用到,有时候一些总的统计数据不合适放在数据表格里,需要单独显示,这时候就可以放在Footer中显示而不必另外布局. 该怎么给 DataGr ...

  7. IE浏览器右键菜单插件开发(上篇)——自定义一个IE右键菜单项

    要做一个IE右键浏览器插件,得3步走. 第一,在IE右键菜单上添加自定义菜单名称,是通过注册表实现的,如下: string regkey = @"Software\Microsoft\Int ...

  8. WijmoJS 以声明方式添加 Vue 菜单项

    WijmoJS 以声明方式添加 Vue 菜单项 在V2019.0 Update2 的全新版本中,Vue框架下 WijmoJS 的前端UI组件功能得到再度增强. 如今,向wj菜单组件添加项的方法将不限于 ...

  9. 添加鼠标右键菜单项(EditPlus为例)

    下载Editplus,发现大多是绿色版,这就导致鼠标右键快捷菜单了,使用起来不方面,上网搜集了下资料,解决方法很简单: 首先进入注册表:regedit 然后如图设置新项. 其中editplus是右键菜 ...

随机推荐

  1. OK335xS psplash 进度条工作原理 hacking

    #!/bin/sh # # rc This file is responsible for starting/stopping # services when the runlevel changes ...

  2. java常量池

    Java的堆是一个运行时数据区,类的(对象从中分配空间.这些对象通过new.newarray. anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放.堆是由垃圾回 ...

  3. 零基础编程指南(By Turtle)

    [零.基础] 1.看文章:<程序猿搜索的技巧>(未完成) [一.入门] 学习语言:VB 安装:下载VB6即可 教程:<李天生vb从入门到精通>http://www.xin372 ...

  4. ch03-文字版面的设计

    Ch03: 文字版面的编辑 3.1 版面控制标记 3.1.1 取消文字换行: <NOBR> 1-取消换行文字实例:1-取消换行文字实例; 1-取消换行文字实例; 2-取消换行文字实例:2- ...

  5. 关于WCF中间层服务器端DTO属性更新如何同步回仓储实体的处理方式

    中间层建立上下文录制对象及录制属性.如下范例: public bool CancelChangeEvent(ClientContext context, Dbs dbs, int encounterI ...

  6. 如何设置适当的ramp-up period值

    如何设置适当的值并不轻易. 首先,假如要使用大量线程的话,ramp-up period 一般不要设置成零. 因为假如设置成零,Jmeter将会在测试的开始就建立全部线程并立即发送访问请求, 这样一来就 ...

  7. 我喜欢的乐队-Euphoria

    来自日本的后摇乐团,001年冬天由森川裕之.佐藤昭太.木下阳辅三人于东京组建,2003年签约日本独立厂牌123Record,并发行首张EP细碟<Floral Dew>.包括EP.Singl ...

  8. 2016传统行业“互联网+”元年,你准备好了吗?

    李克强总理在2015年的政府报告中的提出了"互联网+"的概念! 2015年,几十.上百本以"互联网+"作为书名的书出版! 2015年,各种传统行业的信息化被冠上 ...

  9. container_of

    在学习Linux驱动的过程中,遇到一个宏叫做container_of.该宏定义在include/linux/kernel.h中,首先来贴出它的代码: /** * container_of - cast ...

  10. 【暑假】[实用数据结构]UVa11991 Easy Problem from Rujia Liu?

    UVa11991 Easy Problem from Rujia Liu?  思路:  构造数组data,使满足data[v][k]为第k个v的下标.因为不是每一个整数都会出现因此用到map,又因为每 ...