如何在d3动态表中隐藏列?

时间:2019-02-07 08:47:50

标签: javascript d3.js

我正在尝试使用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])});
    })

0 个答案:

没有答案