作家
登录

extjs 04_grid 单击事件新发现

作者: 来源:www.28hudong.com 2013-03-30 00:20:06 阅读 我要评论

EXTJS GRID 中 单击行和单元格获得行或者单元格的内容(数据) Js代码 复制代码 代码如下: grid.addListener('cellclick',cellclick); function cellclick(grid, rowIndex, columnIndex, e) { var record = grid.getStore().getAt(rowIndex); //Get the Record var fieldName = grid.getColumnModel().getDataIndex(columnIndex); //Get field name var data = record.get(fieldName); Ext.MessageBox.alert('show','当前选中的数据是'+data); } grid.addListener('cellclick',cellclick); function cellclick(grid, rowIndex, columnIndex, e) { var record = grid.getStore().getAt(rowIndex); //Get the Record var fieldName = grid.getColumnModel().getDataIndex(columnIndex); //Get field name var data = record.get(fieldName); Ext.MessageBox.alert('show','当前选中的数据是'+data); } ------------------------------------------------------------------------------ Js代码 复制代码 代码如下: grid.on('mouseover',function(e){//添加mouseover事件 var index = grid.getView().findRowIndex(e.getTarget());//根据mouse所在的target可以取到列的位置 if(index!==false){//当取到了正确的列时,(因为如果传入的target列没有取到的时候会返回false) var record = store.getAt(index);//把这列的record取出来 var str = Ext.encode(record.data);//组装一个字符串,这个需要你自己来完成,这儿我把他序列化 var rowEl = Ext.get(e.getTarget());//把target转换成Ext.Element对象 rowEl.set({ 'ext:qtip':str //设置它的tip属性 },false); } }); grid.on('mouseover',function(e){//添加mouseover事件 var index = grid.getView().findRowIndex(e.getTarget());//根据mouse所在的target可以取到列的位置 if(index!==false){//当取到了正确的列时,(因为如果传入的target列没有取到的时候会返回false) var record = store.getAt(index);//把这列的record取出来 var str = Ext.encode(record.data);//组装一个字符串,这个需要你自己来完成,这儿我把他序列化 var rowEl = Ext.get(e.getTarget());//把target转换成Ext.Element对象 rowEl.set({ 'ext:qtip':str //设置它的tip属性 },false); } }); --------------------------------------------------------------------------------- Js代码 复制代码 代码如下: listeners: { 'cellclick':function(grid,rowIndex,columnIndex,e ){ } } //这是单击grid单元格时,触发的事件 listeners: { 'cellclick':function(grid,rowIndex,columnIndex,e ){ } } //这是单击grid单元格时,触发的事件 Js代码 grid.getView().getCell(rowIndex,columnIndex).style.background-color="#FF6600"; grid.getView().getCell(rowIndex,columnIndex).style.color="#FF6600"; grid.getView().getCell(rowIndex,columnIndex).style.background-color="#FF6600"; grid.getView().getCell(rowIndex,columnIndex).style.color="#FF6600"; 我要改变都是整个背景色,不是光是字的颜色。还有怎么能点一个单元格时候,让上次的点的单元格颜色恢复到原来呢??? 把表格刷新下可以把以前单击而改变的颜色还原,grid.getView().refresh(); 然后再让这次单击的单元格变色。 Js代码 复制代码 代码如下: grid.getView().refresh(); grid.getView().getCell(rowIndex,columnIndex).style.backgroundColor="#FF9999";

  推荐阅读

  javascript:history.go()和History.back()的区别及应用

复制代码 代码如下: <input type=button value=刷新 onclick="window.location.reload()"> <input type=button value=前进 onclick="window.history.go(1)"> <input type=button value=后退 onclick="window.histo>>>详细阅读


本文标题:extjs 04_grid 单击事件新发现

地址:http://www.17bianji.com/kaifa2/JS/22923.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)