手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >extjs 04_grid 单击事件新发现
extjs 04_grid 单击事件新发现
摘要:EXTJSGRID中单击行和单元格获得行或者单元格的内容(数据)Js代码复制代码代码如下:grid.addListener('cellcli...

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";

【extjs 04_grid 单击事件新发现】相关文章:

日期函数扩展类Ver0.1.1

JSON字符串和对象之间的转换详解

介绍JavaScript中Math.abs()方法的使用

javascript元素动态创建实现方法

Javascript事件触发列表与解说

JavaScript事件的理解

JavaScript常用函数工具集:lao-utils

javascript相关事件的几个概念

解析javascript中鼠标滚轮事件

javascript操作表格

精品推荐
分类导航