例如:
var qdGridColumns = new Ext.grid.ColumnModel([
new Ext.grid.RowNumberer({ width : 28 ?}),
{
header ???????????: ‘下载‘,
dataIndex ????????: ‘load‘,
width ????????????: 120,
align ????????????: ‘center‘,
renderer ?????????: function(value, metaData, record){
????????????? return "<a href=‘#‘>下载</a>"; //超链接字样,点击触发GridPanel里的触发(cellclick)事件,然后在该事件里做判断,
}
,
{
header ???????????: ‘发布人‘,
dataIndex ????????: ‘username‘,
width ????????????: 200,
align ????????????: ‘center‘,
renderer ?????????: function(v){return v;}
}
,
{
header ???????????: ‘发布时间‘,
dataIndex ????????: ‘datetime‘,
width ????????????: 220,
align ????????????: ‘center‘,
renderer ?????????: function(v){return v;}
}
]);
//panel里的单元格点击事件 :
var qdGridPanel = new Ext.grid.GridPanel({
title ??: ‘<span class="commoncss">【文件发布明细】</span>‘,
???region ???????????????: ‘east‘,
store ????????????????: qdGridStore,
cm ???????????????????: qdGridColumns,
height ?: 300,
width ?: 620,
stripeRows ???????????: true,
trackMouseOver ???????: true,
loadMask ?????????????: true,
frame ????????????????: true,
clicksToEdit ?????????: 1,
listeners: {
??????????// cellclick: function( thi, td, cellIndex, record, tr, rowIndex, e, eOpts) {
cellclick: function(grid, rowIndex, columnIndex, e) {
//点击到的单元格列的角标
???????? //console.log(columnIndex);
//点击单元格列的名字,此处为name=‘load‘
?????????????? var name = ?grid.getColumnModel().getDataIndex(columnIndex);
?????????????? //console.log(name);
var record = grid.getStore().getAt(rowIndex);//获取该行的数据
var filepath = record.data.filepath//获取该行某个列的值
// ?var data = record.get(name);//根据名字获取某列的值
if(name==‘load‘){ //也可根据 columnIndex 列的角标判断是否是该列----该方法当列角标改变容易出错;
???????????? alert(123); //此处添加你的点击事件所要触发的方法,或业务
?????????????? }else{
?????????????? return ;
?????????????? }
???????????}
???????}
});
extjs3.x ?在grid表格里添加超链接点击事件,并触发有效。
原文地址:https://www.cnblogs.com/xplj2013/p/10312700.html