我正在使用以下功能为我的选择框
创建添加选项 //add options to the requested select box
addOptionsToSelect : function(__enum , obj, selected_value) {
$(__enum).each(function(i){
var optn = new Option(this.text, this.val)
if(selected_value === this.val){ optn.setAttribute('selected', 'selected') }
$(obj)[0].options.add(optn);
});
return obj
}
__enum
是包含值的键值对,以及我们传递给选择选项的文本
obj
是选择框obj,也是动态创建的
selected_value
是需要在选择框中设置为所选的值。
这里的问题是optn.setAttribute('selected', 'selected')
在所有期望IE8的浏览器中都能正常工作。
我正在寻找一种解决方法,允许我动态设置所有浏览器中的选定值。
答案 0 :(得分:1)
我会添加一个类似的选项:
var select = document.getElementById("drop-down");
var newOption = document.createElement("option");
newOption.innerHTML = 'hello';
select.appendChild(newOption);
以下是一个示例:my fiddle