通过javascript添加select元素在ie中不起作用

时间:2011-04-27 21:07:41

标签: javascript internet-explorer select

我的代码在Safari和FF中工作正常,但在IE中,下拉列表是空的。它只是空的。有任何想法吗?这是jquery-1.5。谢谢!

var sel = document.createElement("select");
sel.setAttribute("id", key)
sel.setAttribute('name', key)
for (var option in ddHash[key]){
    var optElement = document.createElement("option")
    optElement.text = ddHash[key][option]
    if (// some conditional){
        optElement.selected = true
    }
    else {
        optElement.selected = false
    }
    sel.appendChild(optElement)
}

2 个答案:

答案 0 :(得分:1)

我认为optElement.text对于IE来说应该是optElement.innerText

答案 1 :(得分:0)

来自option object的MSDN参考:

  

您可以创建新的OPTION元素   动态地与   document.createElement方法,但是你   在新的之前不能改变属性   element被添加到SELECT对象中。   或者,您可以创建完全成型   使用Option对象的元素,   如下:

var opt = new Option( 'Text', 'Value', fDefaultSelected );

因此,在尝试设置属性之前,您似乎只需要调用appendChild