我想使用數據集來創建一組單選按鈕並將其標記爲默認值。這裏有兩個問題:D3中的單選按鈕:如何正確對齊文本並選擇默認值?
首先,文本對齊單選按鈕的左邊,但習慣上看到它的權利,在HTML這樣的:
<form><label><input type="radio"...> First label<input...></label>
我試着在設置了輸入標籤後,使用標籤集合上的D3來放置標籤文本,但是這似乎會覆蓋輸入標籤。
其次,默認按鈕僅以非限定屬性名稱「checked」或「selected」表示。我已經在代碼的最後一行嘗試了這一點,但它似乎不起作用。
這是現在的代碼,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;});
非常感謝 - 我很感謝span上的想法,並感謝您向我介紹selection.property。我一直在使用「已選中」而不是「已選中」,但是我正在使用任何排列方式來查看是否可以實現它。 –