如何将按钮列添加到Ag网格Javascript网格
我已经设法让AgGrid(Javascript)的社区版本正常工作 然而,我不能让按钮工作如何将按钮列添加到Ag网格Javascript网格,javascript,ag-grid,Javascript,Ag Grid,我已经设法让AgGrid(Javascript)的社区版本正常工作 然而,我不能让按钮工作 function drop( id) { alert(id); } var columnDefs = [ { headerName: "HELLO", field: "name", sortable: true, filter: true }, { headerName: 'One', field: 'fieldName', cellRendere
function drop( id) {
alert(id);
}
var columnDefs = [
{ headerName: "HELLO", field: "name", sortable: true, filter: true },
{ headerName: 'One', field: 'fieldName',
cellRenderer : function(params){
return '<div><button (click)="this.drop(params.id)">Click</button></div>'
}
}
];
函数删除(id){
警报(id);
}
var columnDefs=[
{headerName:“HELLO”,字段:“name”,可排序:true,筛选器:true},
{headerName:'One',fieldName'字段,
cellRenderer:函数(参数){
返回“单击”
}
}
];
我需要在用户单击按钮时调用该函数
什么都没发生?控制台中甚至没有错误
我做错了什么
社区版是否禁用了此功能
请注意,我需要一个Javascript解决方案,而不是Angular或Ag网格支持的任何其他语言/框架
Paul在使用
cellRenderer
时,不应像(单击)=“this.drop(params.id)”
那样注册事件
相反,使用javascript方式注册侦听器。看看下面的代码
colDef.cellRenderer = function(params) {
var eDiv = document.createElement('div');
eDiv.innerHTML = '<span class="my-css-class"><button class="btn-simple">Push Me</button></span>';
var eButton = eDiv.querySelectorAll('.btn-simple')[0];
eButton.addEventListener('click', function() {
console.log('button was clicked!!');
});
return eDiv;
}
colDef.cellRenderer=函数(参数){
var eDiv=document.createElement('div');
eDiv.innerHTML='推送我';
var eButton=eDiv.querySelectorAll('.btn simple')[0];
eButton.addEventListener('click',function(){
log('按钮被点击了!!');
});
返回eDiv;
}
参考资料:
在使用
cellRenderer
时,不应注册类似(单击)=“this.drop(params.id)”
的事件
相反,使用javascript方式注册侦听器。看看下面的代码
colDef.cellRenderer = function(params) {
var eDiv = document.createElement('div');
eDiv.innerHTML = '<span class="my-css-class"><button class="btn-simple">Push Me</button></span>';
var eButton = eDiv.querySelectorAll('.btn-simple')[0];
eButton.addEventListener('click', function() {
console.log('button was clicked!!');
});
return eDiv;
}
colDef.cellRenderer=函数(参数){
var eDiv=document.createElement('div');
eDiv.innerHTML='推送我';
var eButton=eDiv.querySelectorAll('.btn simple')[0];
eButton.addEventListener('click',function(){
log('按钮被点击了!!');
});
返回eDiv;
}
参考资料:
好的,谢谢,当我到办公室时我会试试,但是我如何通过参数呢?我需要行中对象的Id此操作有效,谢谢我通过将eButton.value设置为params.value进行扩展,然后在事件中使用this.value确定谢谢我到办公室后会尝试此操作,但我如何获得参数?我需要行中对象的Id这是因为我将eButton.value设置为params.value,然后在事件中使用this.value对其进行了扩展