好奇怪阿remove不能全部删掉select中的option,内有代码,高人进来看一下,我觉得代码没有问题,奇怪的结果
function ChangeJobItem(objThis){
switch(objThis.selectedIndex){//listbox选择一项,总共两项
case 0:
ClearJobItem();
break;
case 1:
AddFacultyJob();
break;
}
}
function ClearJobItem(){//清除id为job的listbox option,全部清除
var optionCount;
var i;
optionCount=job.options.length;
for(i=0;i<optionCount;i++){
job.remove(i);
}
job.add(new Option("请选择职位"));
}
function AddFacultyJob(){//添加job的option
ClearJobItem();
job.add(new Option("室内设计师"));
job.add(new Option("模型制作人"));
job.add(new Option("平面设计师"));
job.add(new Option("网络前台设计师"));
job.add(new Option("网络后台设计师"));
job.add(new Option("动画师"));
}
现在先选者type的selectedIndex为1得项时AddFacultyJob()正常输出
之后选者type为selectedIndex为0得项应该得出清除job所有项加入“请选择职位”的结果,可是得到的结果为”室内设计师““平面设计师““网络后台设计师““请选者职位“等,remove(i)为什么没有正确删除option呢?
能够正确返回option的个数,我跟踪了options.length的值是正确的,for循环的次数也是对的,就是不知道为什么有些没有被删掉,而且是隔一个删
问题是先case 1再case 0的时候出现的