0
  • 我有一个带有硬编码选项的组合框。
  • 我将动态添加剩余的选项

带有硬编码选项的组合框:

<select id="connectionname" class="connectionname" onchange="display();"><option>---Select---</option></select>

用于动态创建组合框选项的 Javascript 函数:

function showDbDlg(){
    var newar=new Array();
    try{
        var xhrArgs = {
                url: "./ReadDBDetails",
                content: {MODE:"DBNAMES"}, 
                handleAs: "text",
                load: function(response) {
                    var dbNames = response.trim();
                    dbNames=dbNames.substring(0,dbNames.length-1);
                    dbArray=dbNames.split(",");
                    /*var selectValue = document.getElementById("connectionname").value;
                    alert(selectValue);*/
                    document.getElementById("connectionname").options.length = 0;
                    for(var i=0;i<dbArray.length;i++){
                        var newValue = document.getElementById("connectionname").appendChild(document.createElement('option'));
                        newValue.text = dbArray[i];
                    }
                    formDialog.show();
                },
                error: function(error) {
                    alert("An unexpected error occurred: " + error);
                }
        };
        var deferred = dojo.xhrPost(xhrArgs);
    }catch(e){alert(e);}

}
  • 在动态创建选项之前,每次都使用下面的行来清除现有选项。
  • document.getElementById("connectionname").options.length = 0;
  • 它也清除了硬编码选项。
  • 我的需要是,我想单独清除动态创建的选项..而不是硬编码的选项。
4

1 回答 1

3

你试过这个吗?

document.getElementById("connectionname").options.length = 1;
于 2013-02-27T07:59:46.493 回答