我正在尝试使用d3创建一个动态表。我正在使用数组绑定数据,但我不希望全部显示。我需要将值隐藏在2列中,我需要在其中添加按钮,然后在单击按钮时传递这些值。我设法附加了按钮并在单击按钮时传递了值,但是我无法将这些值隐藏在列中。我的工作代码附在下面。
var titles =['IssuerID','Organization Name','Website','Documents','Approved'];
const table = d3.select("#tbodynotapproved").append("table");
var headers = table.append('thead').append('tr')
.selectAll('th')
.data(titles).enter()
.append('th')
.text(function (d) {
return d;
})
var rows = table.append('tbody').selectAll('tr')
.data(data).enter()//this is my data which is in JSON format
.append('tr')
rows.selectAll('td')
.data(function (d) {
return titles.map(function (k,i) {
return {
'value': d[i],
'name': k,
};
});
}).enter()
.append('td')
.attr('data-th', function (d) {
return d.name;
})
.text(function (d) {
return d.value;
});
var btnDoc = rows.append("td");
btnDoc.append("button")
.attr('class','custombtn4')
.text("View")
.on("click", function(d){
return App.viewdoc(d[3])});
var buttonColumn = rows.append("td");
buttonColumn.append("button")
.attr('class','custombtn4')
.text("Approve")
.on("click", function(d){
return App.approve(this.id,d[4])});
})