我有一个使用javascript函数动态创建的select选项。选择对象为
<select name="country" id="country">
</select>当执行js函数时,"country“对象是
<select name="country" id="country">
<option value="AF">Afghanistan</option>
<option value="AL">Albania</option>
...
<option value="ID">Indonesia</option>
...
<option value="ZW">Zimbabwe</option>
</select>并将“印度尼西亚”显示为默认选择的选项。注意:该选项中没有selected="selected"属性。
然后,我需要将selected="selected"属性设置为“印度尼西亚”,并使用下面的代码
var country = document.getElementById("country");
country.options[country.options.selectedIndex].setAttribute("selected", "selected");使用firebug,我可以看到“印度尼西亚”选项如下所示
<option value="ID" selected="selected">Indonesia</option>但在IE中失败(在IE 8中测试)。
然后我试着使用jQuery
$( function() {
$("#country option:selected").attr("selected", "selected");
});它在FFX和IE中都失败。
我需要“印尼”选项有selected="selected"属性,所以当我点击重置按钮,它将再次选择“印尼”。
更改js函数以动态创建"country“选项不是一个选项。该解决方案必须在FFX和IE中都有效。
谢谢
发布于 2011-01-04 11:14:41
// Get <select> object
var sel = $('country');
// Loop through and look for value match, then break
for(i=0;i<sel.length;i++) { if(sel.value=="ID") { break; } }
// Select index
sel.options.selectedIndex = i;贝吉图·哈哈。
https://stackoverflow.com/questions/4590311
复制相似问题