如何在不影响索引的情况下从选择列表中删除选项?

时间:2017-02-21 14:41:40

标签: javascript

我正在编写以下JavaScript,它将从选择列表中删除一些选项:

var selectobject = document.getElementById("Approver_90afaad9-2b54-46fb-8ac1-7374e4efa11e_$DropDownChoice");

for (var i = 0; i < selectobject.options.length; i++) {
    var isCM = false;

    for (var ii = 0; ii < assets.length; ii++) {
        if (assets[ii].Title == selectobject.options[i].value) {
            isCM = true;
        }
    }
    if (isCM == false) {
        selectobject.remove(i);
    }
}

但我遇到的问题是,当我使用selectobject.remove(i);删除选项时,i内的selectobject索引会被更改,所以有没有办法保留原文selectobject.remove(i);之后的索引?我试图在selectobject内复制var,但我仍面临同样的问题......

由于

1 个答案:

答案 0 :(得分:0)

我有一个解决方法。也许你可以使用它。而不是

selectobject.remove(i);

您可以使用:

selectobject.style.display = "none";

这甚至可以保留您的原始索引。