Javascript IE7中未显示的动态下拉选项
我们有一个使用javascript动态填充的下拉列表(如下)。但它在IE7中没有显示 这是填充选项的代码:Javascript IE7中未显示的动态下拉选项,javascript,drop-down-menu,Javascript,Drop Down Menu,我们有一个使用javascript动态填充的下拉列表(如下)。但它在IE7中没有显示 这是填充选项的代码: <script language="javascript" type="text/javascript"> window.onload = function() { var today= new Date(); var year= today.getFullYear(); var val =0; t
<script language="javascript" type="text/javascript">
window.onload = function() {
var today= new Date();
var year= today.getFullYear();
var val =0;
t2= 51;
grad_yr = document.getElementById("grad_yr");
grad_yr.options[0] = new Option("Year",val,false,false);
var y=year;
var yy=y;
for (var i=1; i <t2 ; i++) {
grad_yr.options[i] = new Option(y,y);
y=yy-1;
yy--;
}
}
</script>
window.onload=函数(){
var today=新日期();
var year=today.getFullYear();
var=0;
t2=51;
grad_yr=document.getElementById(“grad_yr”);
梯度年选项[0]=新选项(“年”,val,false,false);
var y=年份;
var yy=y;
对于(var i=1;i试试这个
var grad_yr = document.getElementById("grad_yr");
试试这个
var grad_yr = document.getElementById("grad_yr");
您为grad_yr
变量和select元素使用了相同的全局变量名,从而创建了名称冲突。请按ID注释从文档中提取grad_yr
的行,因为这是不必要的:
//grad_yr = document.getElementById("grad_yr");
grad_yr.options[0] = new Option("Year", val, false, false);
或者,如果您确实需要一个变量引用,只需为您的变量指定一个不同的名称,如下(或类似的名称):
grad_yrVar=document.getElementById(“grad_yr”);
grad_yrVar.options[0]=新期权(“年”,val,false,false);
...
对于(变量i=1;i
…它应该可以工作。您已经为grad\u yr
变量和select元素使用了相同的全局变量名,从而创建了名称冲突。请按ID注释从文档中提取grad\u yr
的行,因为这是不必要的:
//grad_yr = document.getElementById("grad_yr");
grad_yr.options[0] = new Option("Year", val, false, false);
或者,如果您确实需要一个变量引用,只需为您的变量指定一个不同的名称,如下(或类似的名称):
grad_yrVar=document.getElementById(“grad_yr”);
grad_yrVar.options[0]=新期权(“年”,val,false,false);
...
对于(变量i=1;i
…它应该会起作用。var y=yy…y=yy-1;yy--;
给了我一个动脉瘤。var y=yy…y=yy-1;yy--;
给了我一个动脉瘤。现在的情况是它显示在IE7(下拉列表)中,但没有选择的名称(即“年”)。在IE8中,选择名称出现了,但下拉列表仍然没有填充。嗯……它在IE7和IE8中对我起作用。您是否在IE8中使用“兼容模式”和开发工具(F12键)进行测试?另一个想法是:将您的grad\u yr.options[i]=new Option()
语句更改为grad\u yr.add(new Option())
取而代之,看看这是否有效……现在的情况是,它显示在IE7(下拉列表)中,但没有选择名称(即“年”)。在IE8中,选择名称出现,但下拉列表仍然没有填充。嗯……它在IE7和IE8中对我有效。您是否使用“兼容模式”和开发工具(F12键)在IE 8中进行测试?另一个想法是:将你的grad\u yr.options[i]=new Option()
语句改为grad\u yr.add(new Option())
,看看这是否有效。。。