我想知道是否有办法将占位符添加到单选按钮。我尝试这样做,代码如下,但它没有用。我希望第一个按钮的占位符值为“1”,第二个按钮的值为“2”,依此类推。有没有办法做到这一点?我的意思是,当用户查看按钮时,该按钮的编号为“1”。
function drawTable(daysInMonth) {
var cellsToDraw = daysInMonth;
var table = document.getElementById("table");
table.innerHTML = "";
for (r = 0; r < (daysInMonth / 7); r++) {
var newRow = document.createElement("tr");
table.appendChild(newRow);
for (c = 0; c < 7 && cellsToDraw > 0; c++) {
var newCell = document.createElement("input");
newCell.setAttribute("type", "radio");
newCell.setAttribute("name", "day");
newCell.setAttribute("placeholder", 1)
newRow.appendChild(newCell);
newCell.innerHTML = //add the numbers here?
cellsToDraw--;
}
}
}
CSS:
input[type=radio] {
border: 1px solid;
padding: 0.5em;
-webkit-appearance: none;
width: 95px;
height: 100px;
margin-right: -4px;
margin-top: -8px;
}
所有帮助都是适当的!
答案 0 :(得分:1)
单选按钮不支持占位符,无论如何都不会有任何空间来渲染它。
听起来你的占位符与标签混淆(见this article)。
改为使用LABEL元素。
除此之外:不允许INPUT元素成为TR元素的子元素。只有TD和TH元素可能是TR的子代。
function drawTable(daysInMonth) {
var cellsToDraw = daysInMonth;
var table = document.createElement("table");
document.body.appendChild(table);
for (r = 0; r < (daysInMonth / 7); r++) {
var newRow = document.createElement("tr");
table.appendChild(newRow);
for (c = 0; c < 7 && cellsToDraw > 0; c++) {
var newCell = document.createElement("td");
var input = document.createElement("input");
var label = document.createElement("label");
input.setAttribute("type", "radio");
input.setAttribute("name", "day");
label.appendChild(input);
label.appendChild(document.createTextNode("1"));
newCell.appendChild(label);
newRow.appendChild(newCell);
cellsToDraw--;
}
}
}
drawTable(30);
&#13;
答案 1 :(得分:0)
而不是innerHTML,您可以设置值
newCell.value = c