我想使用以下函数填充select元素。它适用于FF和Chrome,但IE中的下拉空白:
function resetMajor(target) {
var vname = jQuery(target).attr('name');
var majorId = jQuery(target).val();
var highestDegreeCategory = jQuery('#highestLevel :selected').val();
jQuery(target).empty();
jQuery(target).append(jQuery("<option>").val("0").html(" -- Select -- "));
jQuery.each(jsonMajors, function(index, element){
var isAvailable = true;
var vname =element.majorName;
if (vname.indexOf("(") > 0)
vname = vname.substring(0,vname.indexOf("("));
if ("UGRD"==highestDegreeCategory && "GRAD"==element.category){
isAvailable = false;
}
if (isAvailable){
jQuery(target).append(jQuery("<option>").val(element.majorId).html(vname));
if (element.majorId == majorId){
jQuery(target).children(":last").attr("selected","selected");
}
}
});
}
答案 0 :(得分:1)
我怀疑下面的代码
jQuery(target).append(jQuery("<option>").val("0").html(" -- Select -- "));
jQuery(target).append(jQuery("<option>").val(element.majorId).html(vname));
您可以像下面一样进行更改并查看
jQuery(target).append('<option value="0"> -- Select -- </option>'));
jQuery(target).append('<option value="' + element.majorId + '">' + vname + '</option>'));