Javascript EXtJS grid CheckColumn,单击列/检查列状态后如何执行函数?
我有一个带有checkcolumn的ExtJS网格,它是这样声明的:Javascript EXtJS grid CheckColumn,单击列/检查列状态后如何执行函数?,javascript,extjs,Javascript,Extjs,我有一个带有checkcolumn的ExtJS网格,它是这样声明的: // the check column is created using a custom plugin sel_column = new Ext.grid.CheckColumn({ sortable: false, header: 'STE<br />SEL', dataIndex: 'sel', width: field_w, listeners: {
// the check column is created using a custom plugin
sel_column = new Ext.grid.CheckColumn({
sortable: false,
header: 'STE<br />SEL',
dataIndex: 'sel',
width: field_w,
listeners:
{
"mousedown":
{
fn : function(e)
{
$.log( "Sel cellclick" , e );
}
}
}
});
// the check column is created using a custom plugin
sel_column = new Ext.grid.CheckColumn({
sortable: false,
header: 'STE<br />SEL',
dataIndex: 'sel',
width: field_w,
onMouseDown: function( e )
{
$.log( e,"MouseDown" );
}
});
//检查列是使用自定义插件创建的
选择列=新的Ext.grid.CheckColumn({
可排序:false,
标题:“STE
SEL”,
数据索引:“sel”,
宽度:字段宽度,
听众:
{
“鼠标镇”:
{
fn:功能(e)
{
$.log(“Sel cellclick”,e);
}
}
}
});
我想添加一些收听者的变化,它的状态,或鼠标点击。
最后—我单击此列的位置希望行的id—存储在文本字段中
现在我可以理解如何捕捉点击事件,我使用onMouseDown,方法如下:
// the check column is created using a custom plugin
sel_column = new Ext.grid.CheckColumn({
sortable: false,
header: 'STE<br />SEL',
dataIndex: 'sel',
width: field_w,
listeners:
{
"mousedown":
{
fn : function(e)
{
$.log( "Sel cellclick" , e );
}
}
}
});
// the check column is created using a custom plugin
sel_column = new Ext.grid.CheckColumn({
sortable: false,
header: 'STE<br />SEL',
dataIndex: 'sel',
width: field_w,
onMouseDown: function( e )
{
$.log( e,"MouseDown" );
}
});
//检查列是使用自定义插件创建的
选择列=新的Ext.grid.CheckColumn({
可排序:false,
标题:“STE
SEL”,
数据索引:“sel”,
宽度:字段宽度,
onMouseDown:函数(e)
{
$.log(e,“鼠标向下”);
}
});
但当我点击任何单元格时,它会激发,而不仅仅是选中框
请帮助我复选框插件需要修改,修改后可以触发点击事件。以及如何获取行/记录的id,该复选框在哪里?
/*
**************************************************************
Sample to add event 'checkchange' in checkbox on checkcolumn,
works with ExtJS 4 or above
*/
//Add you checkcolumn id:'op_check'. No need separate plugin.
//Put this code in You Grid
listeners:{
afterrender:function(){
g = this; //This grid
Ext.getCmp('op_check').on('checkchange', function(c, i){
//Get id from row/record (if in store exist field 'id')
//"i" - in this function is index row, where clicked checkbox
rec = g.store.getAt(i);
id = rec.get('id');
console.log(id); //:)
});
}
}