OK データセット内の列の数に基づいて、いくつかのチェックボックスを動的に div に追加しようとしています。したがって、d3 が適切な属性と、データから決定されたラベルのテキストを入力に追加するだけでよいと思いました。次のコードを試しました。
d3.select("body").selectAll("input")
.data([11, 22, 33, 44])
.enter().append("input")
.attr("checked", true)
.attr("type", "checkbox")
.attr("id", function(d,i) { return i; })
.attr("onClick", "change(this)")
.attr("for", function(d,i) { return i; })
.text(function(d) { return d; });
その結果、ページに 4 つのチェックボックスが表示されますが、ラベルは表示されません。
本当に奇妙なのは、要素を調べると、生成された html が、以下に示すように私が求めているものであるように見えることです。
<input checked="true" type="checkbox" id="0" onclick="change(this)" for="0">11</input>
<input checked="true" type="checkbox" id="1" onclick="change(this)" for="1">22</input>
<input checked="true" type="checkbox" id="2" onclick="change(this)" for="2">33</input>
<input checked="true" type="checkbox" id="3" onclick="change(this)" for="3">44</input>
これをページで使用すると、まさに求めているものが得られます。
非常に単純なものが欠けていると確信していますが、私の人生ではそれが何であるかわかりません。どんな助けもありがたく受け入れました!