[英]jquery .remove() shifting indexes
我有一个名为AgentIDList2的mtuli选择框。 当我选择一堆选项并单击删除按钮时,希望将这些选项从AgentIDList2中完全删除。 相反,发生的是,每次删除元素时索引都会移动,因此我的代码不起作用。 关于如何解决这个问题的任何想法:
function remove_agents() {
var List = $('#AgentIDList2');
List = List[0];
selected = new Array();
for (var i = 0; i < List.options.length; i++) {
if (List.options[i].selected) {
selected.push(i);
}
}
// Break it out like this so we don't screw up the indices and pick the wrong item
for (i=0; i<selected.length; i++) {
List.options.remove(selected[i]);
}
}
有任何想法吗? 谢谢!
function remove_agents() {
var List = $('#AgentIDList2')[0];
selected = [];
for (var i = 0; i < List.options.length; i++) {
if (List.options[i].selected) {
selected.push(i);
}
}
// Break it out like this so we don't screw up the indices and pick the wrong item
for (i=0; i<selected.length; i++) {
List.options.remove(selected[i--]);
}
}
对其进行了一些清理,但解决该问题的方法是手动调整for循环( i--
)中的索引
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.