我想使用数据集创建一组单选按钮并将特定单选按钮标记为默认值。有两个问题:
首先,文本与单选按钮的左侧对齐,但习惯上是在右侧看到它,在 HTML 中是这样的:
<form><label><input type="radio"...> First label<input...></label>
在设置输入标签后,我尝试在标签集合上使用 D3 放置标签文本,但这似乎覆盖了输入标签。
其次,默认按钮仅用不合格的属性名称表示,“选中”或“选中”。我已经在最后一行代码中尝试过这个,但它似乎不起作用。
这是现在的代码,带有相关的 JSFiddle。
var shapeData = ["Arrow", "Cross", "Hexagon", "Star", "Triangle"],
j = 3; // Choose the star as default
// Create the shape selectors
var form = d3.select("body").append("form");
labels = form.selectAll("label")
.data(shapeData)
.enter()
.append("label")
.text(function(d) {return d;})
.append("input")
.attr({
type: "radio",
class: "shape",
name: "mode",
value: function(d, i) {return i;}
})
.attr(function(d, i) {return i==j?"selected":null;});