我不确定为什么第二个removeChild不起作用,两个DOM元素都具有相同的索引,但它只从partylist中删除它而不是新娘选择。我对JS更新,任何帮助都将不胜感激!
function removeOption() {
var party = document.getElementById('partylist');
var bride = document.getElementById('bride');
var mem = party.options[party.selectedIndex];
var obj1 = party.removeChild(party.options[party.selectedIndex]);
var obj2 = bride.removeChild(bride.options[party.selectedIndex]);
}
答案 0 :(得分:0)
从party
移除选项后,party.selectedIndex
为-1
。由于所选选项不再存在,因此不会选择任何选项。您可以通过在删除语句之间添加console.log(party.selectedIndex)
来验证这一点。
bride.options[-1]
会返回undefined
,因此bride
不会删除任何内容。
最简单的解决方案是交换两个语句:
var obj2 = bride.removeChild(bride.options[party.selectedIndex]);
var obj1 = party.removeChild(party.options[party.selectedIndex]);
我强烈建议您学习how to debug JavaScript code,以便您可以自行解决此类问题。