错误消息: 'options[...]' 为空或不是对象
function loadMonth(){
var s=document.getElementById('month');
var month=s.value;
s.options.length=0;
var year=document.getElementById('year').value;
var myDate2=new Date();
var start=12;
if(year==myDate2.getFullYear()){
start=myDate2.getMonth();
start=parseInt(start,10)+1; //转换
}
for(var i=start;i>0;i--){
s.options.add(new Option(i,i));
}
if(month<=start){
var flag=start-month;
********* s.options[flag].selected = "selected";
}
};
这段代码在IE上运行会报标题的错误(“**”处)。因为这是三个onload()事件中的第二个,这里报错后,后面一个就不运行了。然而单击运行后,报错误处的语句是起作用的,可以设置特定的option是选中的,但浏览器就是认为是错的(其他浏览器也认为是错的,360,ff)。希望大家帮忙解决下。
------解决方案--------------------LZ检查下FLAG值,是不是超出下标了?
------解决方案--------------------下标index 一般都是从 0 开始的
------解决方案--------------------alert(s.options[flag]) 弹出来看一下。
------解决方案--------------------flag 不在options 里
------解决方案--------------------单步调试一下看看