我正在尝试开发一个JS函数,每次将新记录添加到数据库时(从定期检查的其他程序)创建一个新行。现在我可以获得检查数据库的功能,将记录添加到表中并动态显示。第一列是用户ID,第二列是我遇到问题的地方。我想包含一个下拉列表,但我不确定如何添加选项。我在第二列中有下拉列表,但没有可供选择的选项。有人有什么建议吗?
function addRow(tableID, user) {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
for(var i=0; i<colCount; i++) {
var opt = document.createElement("option");
tabbody=document.getElementsByTagName("tbody").item(2);
cell1 = document.createElement("TD");
cell2 = document.createElement("TD");
textnode1=document.createTextNode(user);
//textnode2=document.createTextNode("morecontent");
textnode2=document.createElement("select");
textnode2.setAttribute('id', 'focus');
textnode2.options.add(opt);
cell1.appendChild(textnode1);
cell2.appendChild(textnode2);
row.appendChild(cell1);
row.appendChild(cell2);
tabbody.appendChild(row);
var newcell = row.insertCell(i);
newcell.innerHTML = table.rows[0].cells[i].innerHTML;
以下是发送给它的HTML:
<th colspan="2">Pending Alerts</th>
<tr>
<th>User</th>
<th>Action</th>
</tr>
<tbody>
</tbody>
答案 0 :(得分:8)
在
textnode2 = document.createElement("select");
你需要做类似
的事情var op = new Option();
op.value = 1;
op.text = "First entry";
textnode2.options.add(op);
并重复您想要的参赛作品。
答案 1 :(得分:4)
我喜欢这种方法。
var dropdown = document.getElementById("MyDropDownList");
var opt = document.createElement("option");
opt.text = 'something';
opt.value = 'somethings value';
dropdown.options.add(opt);