[转] Ext Grid (ExtJs)上的单击以及双击事件
例1:
- 1、双击
 - var cb = new Ext.grid.RowSelectionModel({
 - singleSelect:true //如果值是false,表明可以选择多行;否则只能选择一行
 - });
 - var alarmGrid = new Ext.grid.GridPanel({
 - }
 - alarmGrid.addListener('rowdblclick', rowdblclickFn);
 - function rowdblclickFn(grid, rowindex, e){
 - grid.getSelectionModel().each(function(rec){
 - alert(rec.get(fieldName)); //fieldName,记录中的字段名
 - });
 - }
 - 2、单击
 - var cb = new Ext.grid.RowSelectionModel({
 - singleSelect:true //如果值是false,表明可以选择多行;否则只能选择一行
 - });
 - var alarmGrid = new Ext.grid.GridPanel({
 - }
 - alarmGrid.addListener('rowclick', rowclickFn);
 - function rowclickFn(grid, rowindex, e){
 - grid.getSelectionModel().each(function(rec){
 - alert(rec.get(fieldName)); //fieldName,记录中的字段名
 - });
 - }
 
初始化时添加:以上那个是单独写的添加单击双击事件,主要使用addListener添加'rowclick'和'rowdblclick'代表单击和双击事件。而初始化配置,只要配置Grid里面的listeners就可以了!
- var cb = new Ext.grid.RowSelectionModel({
 - singleSelect:true //如果值是false,表明可以选择多行;否则只能选择一行
 - });
 - var alarmGrid = new Ext.grid.GridPanel({
 - }
 - alarmGrid.addListener('rowclick', rowclickFn);
 - function rowclickFn(grid, rowindex, e){
 - grid.getSelectionModel().each(function(rec){
 - alert(rec.get(fieldName)); //fieldName,记录中的字段名
 - });
 - }
 - var grid = new Ext.grid.GridPanel({
 - store: <your datastore>,
 - columns:[<your columns>],
 - renderTo:'example-grid',
 - height:200,
 - listeners:{
 - //单击
 - rowdblclick : function(grid,row){
 - alert("rowdblclick")
 - },
 - //双击
 - rowclick:function(grid,row){
 - alert('rowclick')
 - }
 - }
 - });
 
例2:
ExtJs4.0的表格双击事件 怎么实现?
查阅了相关例子和google,但是测试都不成功。求用过extjs4的大侠指点下,不胜感激!
附google到的一个例子:
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
 | 
var cb = new Ext.grid.RowSelectionModel({        singleSelect:true //如果值是false,表明可以选择多行;否则只能选择一行   });      var alarmGrid = new Ext.grid.GridPanel({     }   alarmGrid.addListener('rowclick', rowclickFn);      function rowclickFn(grid, rowindex, e){        grid.getSelectionModel().each(function(rec){        alert(rec.get(fieldName)); //fieldName,记录中的字段名        });   }      var grid = new Ext.grid.GridPanel({     store: <your datastore>,     columns:[<your columns>],     renderTo:'example-grid',     height:200,     listeners:{  //单击         rowdblclick : function(grid,row){             alert("rowdblclick")         },  //双击         rowclick:function(grid,row){             alert('rowclick')         }     }  }); | 
 ---------------问题补充---------------
grid.addListener('itemdblclick', click, this); function click(grid, rowindex, e){ alert(11); } 双击事件是itemdbclick,单击事件就是itemclick.
                    
                
                
            
        
浙公网安备 33010602011771号