ExtJs grid行 右键菜单的两种方法


Posted in Javascript onJune 19, 2010

在这下边: 方法一

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="gridContextMenu.aspx.cs" Inherits="gridContextMenu" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="< /FONT>http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>无标题页</title> 
<link rel="Stylesheet" type="text/css" href="ExtJS/resources/css/ext-all.css" /> 
<link rel="Stylesheet" type="text/css" href="ExtJS/resources/css/xtheme-green.css" /> 
<script type="text/javascript" src="ExtJS/adapter/ext/ext-base.js"></script> 
<script type="text/javascript" src="ExtJS/ext-all.js"></script> 
<script type="text/javascript" src="ExtJS/ext-lang-zh_CN.js"></script> 
<style type="text/css"> 
.panel_icon11 { background-image:url(images/first.gif)} 
.center_icon { background-image:url(images/center.png)} 
</style> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<script type="text/javascript"> 
function ready() 
{ 
var url = "jsonGrid.aspx?Param=select"; 
var sm = new Ext.grid.CheckboxSelectionModel(); 
var cm = new Ext.grid.ColumnModel 
([ 
sm,new Ext.grid.RowNumberer({header:"编号",width:50}), 
{header:"编号",dataIndex:"ID",width:10,hidden:true}, 
{header:"标题",dataIndex:"TypeCName",width:100,editor:new Ext.form.TextField()}, 
{header:"英文名称",dataIndex:"TypeEName",width:100,editor:new Ext.form.TextField()}, 
{header:"状态",dataIndex:"DelFlag",width:100,renderer:function(value){if(value==false) {return "显示";} else {return "隐藏";}}}, 
{header:"添加日期",dataIndex:"AddDate",width:100,renderer:Ext.util.Format.dateRenderer('Y年m月d日')} 
]); 
cm.defaultSortable = true; 
var fields = 
[ 
{name:"ID"}, 
{name:"TypeCName"}, 
{name:"TypeEName"}, 
{name:"DelFlag"}, 
{name:"AddDate"} 
]; 
var store = new Ext.data.Store 
({ 
proxy:new Ext.data.HttpProxy({url:url}), 
reader:new Ext.data.JsonReader({totalProperty:"totalPorperty",root:"root",fields:fields}) 
}); 
store.load({params:{start:0,limit:12}}); 
var pagingBar = new Ext.PagingToolbar 
({ 
displayInfo:true, 
emptyMsg:"没有数据显示", 
displayMsg:"显示从{0}条数据到{1}条数据,共{2}条数据", 
store:store, 
pageSize:12 
}); 
var grid = new Ext.grid.GridPanel 
({ 
id:"MenuGridPanel", 
renderTo:document.body, 
layout:"fit", 
frame:true, 
border:true, 
width:600, 
height:360, 
autoScroll:true, 
store:store, 
sm:sm, 
cm:cm, 
viewConfig:{forceFit: true}, 
title:'<img style="height:auto; width:auto;" src="images/first.gif" /> Ext2.2全新功能版系列之--右键菜单', 
bbar:pagingBar 
}); 
grid.on("rowcontextmenu",function(grid,rowIndex,e) 
{ 
e.preventDefault();if(rowIndex<0){return;} 
var treeMenu = new Ext.menu.Menu 
([ 
{xtype:"button",text:"添加",icon:"Images/Icons/button/add.gif",pressed:true,handler:function(){}}, 
{xtype:"button",text:"编辑",icon:"Images/Icons/button/delete.gif",pressed:true,handler:function(){}}, 
{xtype:"button",text:"隐藏",icon:"Images/Icons/arrow-down.gif",pressed:true,handler:function(){}}, 
{xtype:"button",text:"显示",icon:"Images/Icons/arrow-up.gif",pressed:true,handler:function(){}}, 
{xtype:"button",text:"删除",icon:"Images/Icons/button/cross.gif",pressed:true, handler:function(){}}, 
{xtype:"button",text:"上传图片",icon:"Images/Icons/plugin_add.gif",pressed:true,handler:function(){}} 
]); 
treeMenu.showAt(e.getPoint()); 
}); 
} 
</script> 
<script type="text/javascript"> 
Ext.onReady(ready); 
</script> 
</div> 
</form> 
</body> 
</html>

给 Extjs grid 加入右键菜单方法二。
grid.on("rowcontextmenu", function (grid, rowIndex, e) { 
e.preventDefault(); 
if (rowIndex < 0) { return; } 
var treeMenu = new Ext.menu.Menu 
([ 
{ 
xtype: "", 
text: "详细", 
iconCls: 'context-dog', 
pressed: false, 
handler: function () { 
//获得行数据 
var record = grid.getStore().getAt(rowIndex); 
//open_receive_detailWindow(record.data.smsIndex); 
alert(record.data.company); 
//record.data.taskId 
} 
}, { 
xtype: "", 
text: "删除", 
iconCls: 'context-cat', 
pressed: false, 
handler: function () { 
//获得行数据 
var record = grid.getStore().getAt(rowIndex); 
alert(record.data.company); 
} 
} 
]); 
treeMenu.showAt(e.getXY()); 
});
Javascript 相关文章推荐
jquery+ajax每秒向后台发送请求数据然后返回页面的代码
Jan 17 Javascript
使用Jquery来实现可以输入值的下拉选单 雏型
Dec 06 Javascript
微信小程序 开发之顶部导航栏实例代码
Feb 23 Javascript
javaScript实现复选框全选反选事件详解
Nov 20 Javascript
Angularjs cookie 操作实例详解
Sep 27 Javascript
JS正则表达式完美实现身份证校验功能
Oct 18 Javascript
在vue中安装使用vux的教程详解
Sep 16 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
Nov 10 Javascript
jquery实现的分页显示功能示例
Aug 23 jQuery
vue搜索页开发实例代码详解(热门搜索,历史搜索,淘宝接口演示)
Apr 11 Javascript
Vuex实现购物车小功能
Aug 17 Javascript
Canvas三种动态画圆实现方法说明(小结)
Apr 16 Javascript
JavaScript中也使用$美元符号来代替document.getElementById
Jun 19 #Javascript
javascript,jquery闭包概念分析
Jun 19 #Javascript
基于jquery的滚动新闻列表
Jun 19 #Javascript
基于Jquery的温度计动画效果
Jun 18 #Javascript
JQuery Dialog的内存泄露问题解决方法
Jun 18 #Javascript
通过jQuery打造支持汉字,拼音,英文快速定位查询的超级select插件
Jun 18 #Javascript
jquery ready()的几种实现方法小结
Jun 18 #Javascript
You might like
php语言流程控制中的主动与被动
2012/11/05 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
php die()与exit()的区别实例详解
2016/12/03 PHP
解析 thinkphp 框架中的部分方法
2017/05/07 PHP
PHP实现动态删除XML数据的方法示例
2018/03/30 PHP
PHP+redis实现的限制抢购防止商品超发功能详解
2019/09/19 PHP
passwordStrength 基于jquery的密码强度检测代码使用介绍
2011/10/08 Javascript
js+html+css实现鼠标移动div实例
2013/01/30 Javascript
jQuery侧边栏随窗口滚动实现方法
2013/03/04 Javascript
js中点击空白区域时文本框与隐藏层的显示与影藏问题
2013/08/26 Javascript
浅谈js基本数据类型和typeof
2016/08/09 Javascript
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
微信小程序实现点击返回顶层的方法
2017/07/12 Javascript
浅谈vue项目可以从哪些方面进行优化
2018/05/05 Javascript
vue组件name的作用小结
2018/05/23 Javascript
Vue服务端渲染实践之Web应用首屏耗时最优化方案
2019/03/22 Javascript
使用js实现一个简单的滚动条过程解析
2019/09/10 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
2019/12/06 Javascript
Node.js 中判断一个文件是否存在
2020/08/24 Javascript
Python的另外几种语言实现
2015/01/29 Python
Python的Flask框架中配置多个子域名的方法讲解
2016/06/07 Python
python爬虫框架scrapy实战之爬取京东商城进阶篇
2017/04/24 Python
基于python3 类的属性、方法、封装、继承实例讲解
2017/09/19 Python
酷! 程序员用Python带你玩转冲顶大会
2018/01/17 Python
使用Python读取大文件的方法
2018/02/11 Python
Django框架之登录后自定义跳转页面的实现方法
2019/07/18 Python
python打包成so文件过程解析
2019/09/28 Python
python3 pathlib库Path类方法总结
2019/12/26 Python
Matplotlib中rcParams使用方法
2021/01/05 Python
英国标志性奢侈品牌:Burberry
2016/07/28 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
环境科学专业个人求职信
2013/12/15 职场文书
销售总监岗位职责
2014/01/04 职场文书
投标承诺书范本
2014/03/27 职场文书
导师对论文的学术评语
2015/01/04 职场文书
党员转正介绍人意见
2015/06/03 职场文书