到目前为止,我已经创建了一个函数,当您单击某个节点时,它会将与该节点链接的信息填充到表中。我正在努力做的是附加一个表行,让json中的每个项目都在新行上开始。目前我附加了paragrapgh标签,它将该列的所有信息都吐成一列(没有行)。在我的表中有5列,在我的代码中......'tab1'等每个列的反应。是否可以追加表格行?
JS:
d3.json("transactions.JSON", function(error, json) {
if (error) return console.warn(error);
json.forEach(function(company) {
nameLookup[company["Company Number"]] = company["Short Name"];
});
var inputdata = d3.select("tab1").selectAll("td")
.data(json)
.enter()
.append("p")
.filter(function(d) {
return d.lenderCompany == nodeValue && d.type == "loan"
})
.text(function(d) {
return nameLookup[d.lenderCompany]
})
var inputdata = d3.select("tab2").selectAll("td")
.data(json)
.enter()
.append("p")
.filter(function(d) {
return d.lenderCompany == nodeValue && d.type == "loan"
})
.text(function(d) {
return nameLookup[d.receivingCompany]
})
var inputdata = d3.select("tab3").selectAll("td")
.data(json)
.enter()
.append("p")
.filter(function(d) {
return d.lenderCompany == nodeValue && d.type == "loan"
})
.text(function(d) {
return d.valueUSD;
})
var inputdata = d3.select("tab4").selectAll("td")
.data(json)
.enter()
.append("p")
.filter(function(d) {
return d.lenderCompany == nodeValue && d.type == "loan"
})
.text(function(d) {
return d.date;
})
var inputdata = d3.select("tab5").selectAll("td")
.data(json)
.enter()
.append("p")
.filter(function(d) {
return d.lenderCompany == nodeValue && d.type == "loan"
})
.text(function(d) {
return d.interest;
})
});
}
.text(function(d) {
return d.valueUSD;
})
HTML:
<table class="table tableDesign">
<thead>
<tr>
<th>Company</th>
<th>Second Company</th>
<th>Amount</th>
<th>Employee</th>
<th>Bonus</th>
</tr>
</thead>
<tbody>
<tr>
<tab1 class="tableRow"></tab1>
</tr>
<tr>
<tab2 class="tableRow"></tab2>
</tr>
<tr>
<tab3 class="tableRow"></tab3>
</tr>
<tr>
<tab4 class="tableRow"></tab4>
</tr>
<tr>
<tab5 class="tableRow"></tab5>
</tr>
</tbody>
</table>