select.remove()方法的行为令人费解
P粉322918729
P粉322918729 2023-08-18 17:05:54
0
1
438

所以我在AgilePoint中使用JavaScript进行工作。 我已经实现了一个函数,用于从下拉菜单中删除特定选项,但最终结果非常奇怪。以下是示例代码: enter image description here

所以在这里我设置了一个简单的条件,如果条件为真,我想要删除第一个选项,第三个和第四个选项。但最终,它只删除了第一个和第四个选项,第三个选项还在。 enter image description here

最后一个选项也需要被删除,但我不明白为什么它忽略了第二行。

P粉322918729
P粉322918729

全部回复 (1)
P粉818125805

原因是,如果你运行以下代码来移除第0个元素:

select.remove(0);

第2个和第3个元素将不再是第2个和第3个,而是变成了第1个和第2个,因为第0个元素被移除了。

快速解决方案是从最大的索引到最小的索引进行移除:

select.remove(3); select.remove(2); select.remove(0);
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!