Javascript 如何在handsontable中向列的所有单元格添加按钮?
我想为删除操作添加一个按钮或链接到列的单元格。生成的JSON数据是动态的,行数可以随时更改。如何将删除按钮添加到“删除”列的所有单元格 JS小提琴链接Javascript 如何在handsontable中向列的所有单元格添加按钮?,javascript,handsontable,Javascript,Handsontable,我想为删除操作添加一个按钮或链接到列的单元格。生成的JSON数据是动态的,行数可以随时更改。如何将删除按钮添加到“删除”列的所有单元格 JS小提琴链接 我就是这样做的 var hot = new Handsontable(container, { data: financeData, height: 396, colHeaders: ["Price", "Date", "1D Chg", "YTD Chg", "Vol BTC",'Delete'], rowHeaders: true,
我就是这样做的
var hot = new Handsontable(container, {
data: financeData,
height: 396,
colHeaders: ["Price", "Date", "1D Chg", "YTD Chg", "Vol BTC",'Delete'],
rowHeaders: true,
stretchH: 'all',
sortIndicator: true,
columnSorting: true,
contextMenu: true,
columns: [
{type: 'numeric', format: '$0,0.00'},
{type: 'date', dateFormat: 'DD/MM/YYYY', correctFormat: true},
{type: 'numeric', format: '0.00%'},
{type: 'numeric', format: '0.00%'},
{type: 'numeric', format: '0.00'},
{data:'Delete', renderer:renderButtons}
]
});
function renderButtons(instance, td, row, col, prop, value, cellProperties) {
td.innerHTML = "<button onclick='alert()' type='button'>press</button>";
}
var hot=new Handsontable(容器、{
数据:financeData,
身高:396,
列标题:[“价格”、“日期”、“1D Chg”、“年初至今Chg”、“Vol BTC”、“删除”],
行标题:对,
stretchH:'所有',
sortIndicator:对,
是的,
上下文菜单:正确,
栏目:[
{类型:'numeric',格式:'$0,0.00'},
{type:'date',dateFormat:'DD/MM/YYYY',correctFormat:true},
{类型:'numeric',格式:'0.00%'},
{类型:'numeric',格式:'0.00%'},
{类型:'numeric',格式:'0.00'},
{数据:'Delete',呈现器:renderButtons}
]
});
函数renderButtons(实例、td、行、列、属性、值、单元格属性){
td.innerHTML=“按”;
}
我认为columns数组中有一对多行,所以我将最后一行转换为show。我只使用onclick='alert()'来说明它是有效的。实际上,我会做一些类似$(“#tblname button”)的事情
}); 我就是这样做的
var hot = new Handsontable(container, {
data: financeData,
height: 396,
colHeaders: ["Price", "Date", "1D Chg", "YTD Chg", "Vol BTC",'Delete'],
rowHeaders: true,
stretchH: 'all',
sortIndicator: true,
columnSorting: true,
contextMenu: true,
columns: [
{type: 'numeric', format: '$0,0.00'},
{type: 'date', dateFormat: 'DD/MM/YYYY', correctFormat: true},
{type: 'numeric', format: '0.00%'},
{type: 'numeric', format: '0.00%'},
{type: 'numeric', format: '0.00'},
{data:'Delete', renderer:renderButtons}
]
});
function renderButtons(instance, td, row, col, prop, value, cellProperties) {
td.innerHTML = "<button onclick='alert()' type='button'>press</button>";
}
var hot=new Handsontable(容器、{
数据:financeData,
身高:396,
列标题:[“价格”、“日期”、“1D Chg”、“年初至今Chg”、“Vol BTC”、“删除”],
行标题:对,
stretchH:'所有',
sortIndicator:对,
是的,
上下文菜单:正确,
栏目:[
{类型:'numeric',格式:'$0,0.00'},
{type:'date',dateFormat:'DD/MM/YYYY',correctFormat:true},
{类型:'numeric',格式:'0.00%'},
{类型:'numeric',格式:'0.00%'},
{类型:'numeric',格式:'0.00'},
{数据:'Delete',呈现器:renderButtons}
]
});
函数renderButtons(实例、td、行、列、属性、值、单元格属性){
td.innerHTML=“按”;
}
我认为columns数组中有一对多行,所以我将最后一行转换为show。我只使用onclick='alert()'来说明它是有效的。实际上,我会做一些类似$(“#tblname button”)的事情
});
如果使用onclick,请将我的第一个示例中的'alert()'替换为'btnOnClick(this)'
然后在代码中
function btnOnClick(btn) {
// first parentNode is td, second is tr
var row = btn.parentNode.parentNode;
// process row.
}
如果使用onclick,请将我的第一个示例中的'alert()'替换为'btnOnClick(this)'
然后在代码中
function btnOnClick(btn) {
// first parentNode is td, second is tr
var row = btn.parentNode.parentNode;
// process row.
}
感谢您提供的解决方案:)。我也这么想。顺便问一下,您知道如何获取我单击的按钮的行号吗?谢谢您提供的解决方案:)。我也这么想。顺便问一下,你知道如何获取我单击的按钮的行号吗?