JavaScript函数在第二次迭代中不起作用
我有以下JavaScript函数,它遍历所有HTML选择框,并列出1到11之间尚未选择的数字: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 =
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 &&