JavaScript函数在第二次迭代中不起作用

JavaScript函数在第二次迭代中不起作用,javascript,html,Javascript,Html,我有以下JavaScript函数,它遍历所有HTML选择框,并列出1到11之间尚未选择的数字: function onSelected(oSelected) { var sel1 = document.getElementById('preferenceSelect_0') var sel2 = document.getElementById('preferenceSelect_1') var sel3 =

我有以下JavaScript函数,它遍历所有HTML选择框,并列出1到11之间尚未选择的数字:

function onSelected(oSelected)
        {
            var sel1 = document.getElementById('preferenceSelect_0')
            var sel2 = document.getElementById('preferenceSelect_1')
            var sel3 = document.getElementById('preferenceSelect_2')
            var sel4 = document.getElementById('preferenceSelect_3')
            var sel5 = document.getElementById('preferenceSelect_4')
            var sel6 = document.getElementById('preferenceSelect_5')
            var sel7 = document.getElementById('preferenceSelect_6')
            var sel8 = document.getElementById('preferenceSelect_7')
            var sel9 = document.getElementById('preferenceSelect_8')
            var sel10 = document.getElementById('preferenceSelect_9')
            var sel11 = document.getElementById('preferenceSelect_10')  

            var SelectorArray = new Array();

            SelectorArray.push('');

            for(var ii=1; ii<12;  ii++)
            {
                if( sel1.options[sel1.selectedIndex ].text != ii && 
                    sel2.options[sel2.selectedIndex ].text != ii && 
                    sel3.options[sel3.selectedIndex ].text != ii && 
                    sel4.options[sel4.selectedIndex ].text != ii && 
                    sel5.options[sel5.selectedIndex ].text != ii && 
                    sel6.options[sel6.selectedIndex ].text != ii && 
                    sel7.options[sel7.selectedIndex ].text != ii && 
                    sel8.options[sel8.selectedIndex ].text != ii && 
                    sel9.options[sel9.selectedIndex ].text != ii && 
                    sel10.options[sel10.selectedIndex ].text != ii && 
                    sel11.options[sel1.selectedIndex ].text)
                {
                    SelectorArray.push(ii);
                }               
            }

            RemoveSected(sel1, SelectorArray);
            RemoveSected(sel2, SelectorArray);
            RemoveSected(sel3, SelectorArray);
            RemoveSected(sel4, SelectorArray);
            RemoveSected(sel5, SelectorArray);
            RemoveSected(sel6, SelectorArray);
            RemoveSected(sel7, SelectorArray);
            RemoveSected(sel8, SelectorArray);
            RemoveSected(sel9, SelectorArray);
            RemoveSected(sel10,SelectorArray);
            RemoveSected(sel11,SelectorArray);                          
        }
我有两个问题:

为什么它第一次能工作,第二次却不能,我该如何修复它


我已经搜索了一种方法来检查选择框是否已被选中,但它们都不起作用。我只是不明白这是怎么一次,但不是第二次,这对我来说没有意义,因为没有什么不同???

do
console.log(sel1,sel1.selectedIndex)
before loop,看看结果是否相同。也许您在DOM中更改了一些内容?您是否可以提供
RemoveSected
?此外,如果你能提供样品将是伟大的
if( sel1.options[sel1.selectedIndex ].text != ii &&