Javascript jquery IE 7/8选择附加问题

Javascript jquery IE 7/8选择附加问题,javascript,jquery,Javascript,Jquery,我有两个简单的函数可以从列表中附加和删除select元素。 要将元素添加到选择列表中,我使用以下方法 问题是这在Firefox中起作用,并且这些值被附加到列表框中。而在IE中却看不到。 我可以看到元素被附加到列表中,但它们不可见。 有什么想法吗 function moveTrans() { var length= $("#btsexpresults").length; if( $("#transvendor").val() == "-1" || $("#trans").val() == "

我有两个简单的函数可以从列表中附加和删除select元素。 要将元素添加到选择列表中,我使用以下方法

问题是这在Firefox中起作用,并且这些值被附加到列表框中。而在IE中却看不到。 我可以看到元素被附加到列表中,但它们不可见。 有什么想法吗

function moveTrans()
{
var length= $("#btsexpresults").length;

if( $("#transvendor").val()  == "-1" ||  $("#trans").val() == "-1"  ||  $("#transconfto").val().length==0 || $("#transcap").val().length==0 || $("#transcovdeep").val().length ==0 || $("#transcovwide").val().length ==0 || $("#transquant").val().length ==0)
 {
 alert("Please enter all input fields");
return false;
 }

var data=    $("#transvendor").val() + " : "+  $("#trans").val()    + " : "+   $("#transconfto").val()  + " : "+   $("#transcap").val()  + " : "+  $("#transcovdeep").val()  + " : "+ $("#transcovwide").val() +" : "+ $("#transquant").val()     ;
 var no = new Option();
 no.value = data;
 no.text = data;
 $("#transresults").append(no);

}
而不是

 var no = new Option();
 no.value = data;
 no.text = data;
 $("#transresults").append(no);
试用

 $("#transresults").append("<option value='"+data+"'>"+data+"</option>");

您可以使用由来已久的方法,将选项添加到自1997年以来发布的所有主要浏览器的选择列表中:

var select = document.getElementById("transresults");
var opt = new Option("Option text", "optionValue");
select.options[select.options.length] = opt;

使用.valdata设置值可能是明智的,因为这看起来像是类型化数据,而撇号或未替换的值将导致问题。