【发布时间】:2014-05-06 09:23:34
【问题描述】:
我想使用数据集创建一组单选按钮并将特定单选按钮标记为默认值。有两个问题:
首先,文本对齐到单选按钮的左侧,但习惯上是向右看,在 HTML 中是这样的:
<form><label><input type="radio"...> First label<input...></label>
我尝试在标签集合上使用 D3 在设置输入标签后放置标签文本,但这似乎覆盖了输入标签。
其次,默认按钮仅用一个不合格的属性名称表示,“选中”或“选中”。我已经在最后一行代码中尝试过,但它似乎不起作用。
这是现在的代码,associated 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;});
【问题讨论】:
标签: d3.js radio-button label