无法通过JavaScript迭代从select中删除选项?

无法通过JavaScript迭代从select中删除选项?,javascript,html,Javascript,Html,我的目标是根据在以前的选择输入类类型中所做的选择,根据其类列表从选择输入类中删除选项。奇怪的是,调用enableClassSelect时,某些选项会被删除,但并非所有没有必要类的选项都会立即移动。当前,在删除所有选项之前,需要更改类列表约7次。这不应该发生 请参阅下面的代码-我已经检查了好几次,并尝试了一些调试,但都没有效果。console.logclassSelect.length;打印46,这是正确的,因此在迭代中应检查每个选项元素 函数启用ClassSelectClassType{ 让c

我的目标是根据在以前的选择输入类类型中所做的选择,根据其类列表从选择输入类中删除选项。奇怪的是,调用enableClassSelect时,某些选项会被删除,但并非所有没有必要类的选项都会立即移动。当前,在删除所有选项之前,需要更改类列表约7次。这不应该发生

请参阅下面的代码-我已经检查了好几次,并尝试了一些调试,但都没有效果。console.logclassSelect.length;打印46,这是正确的,因此在迭代中应检查每个选项元素

函数启用ClassSelectClassType{ 让classSelect=document.getElementByIdclass; console.logLength:+classSelect.length; 对于i=0;i这是一种方法,不确定这是否是最快的方法,但确实有效

实际上,我从HTML中删除了所有选项,而只是为该类类型添加了正确的选项

函数启用ClassSelectClassType{ //确保这些选项的名称与“类型选择”类中选项的值相同 康斯特魔术师=[战斗法师,驯兽师,火焰法师]; 警察盗贼=[双刃,夜行者,幻影]; //确保这两篇文章的顺序相同 const classTypesNames=[魔术师,小偷]; const classTypes=[魔术师,小偷]; 让classSelect=document.getElementByIdclass; //清除classSelect中的选项,默认选项除外 var length=classSelect.options.length; 如果长度>1{ 对于i=classSelect.options.length-1;i>0;i-{ classSelect.removei; } } //检查他们选择的类类型,并获取该类类型的类列表 对于i=0;i嘿@Callum,干得不错!我现在暂缓接受,因为我想看看是否有人能用我的方法发现问题,它似乎是正确的。。。。如果几天后什么都没有出现,我会接受你的: