function test()
{
var formHTML ="";
var frmid ="test123";
var options = ["Test1", "Test2", "Test3", "Test4", "Test5"]
formHTML += "<select id='" + frmid + ">";
console.log(options);
for ( i = 0; i < options.length; i++) {
var temp = options[i];
var temp2 = "<option value='" + temp + "'>" + temp + "</option>";
console.log(temp2);
formHTML += temp2;
}
formHTML += "</select>";
console.log(formHTML);
document.getElementById("injected").innerHTML+=formHTML;
}
以上是我在我的页面中创建一个选择元素的函数,当我调用这个函数时有一个非常奇怪的问题,它只显示选项 test2、test3、test4、test5 而不是一个......
当我使用 console.log 打印出 formHTML 时,它显示..
<select id='test123><option value='Test1'>Test1</option>
<option value='Test2'>Test2</option>
<option value='Test3'>Test3</option>
<option value='Test4'>Test4</option>
<option value='Test5'>Test5</option>
</select>
但是,如果您运行代码并查看源代码,则 HTML 元素不正确,第一个元素看起来像
<option value='test1'> Test1
缺少关闭选项标签,
我尝试过调试和更改代码,但这个问题让我感到困惑。
是否缺少一些东西有没有更好的方法来解决这个问题?出于速度原因,我试图在操作 DOM 之前将其全部存储在一个字符串中。感谢所有帮助,谢谢