使用javascript清除动态创建的组合框选项

时间:2013-02-27 07:49:11

标签: javascript dynamic combobox options

  • 我有一个组合框,其中一个选项是硬编码的。
  • 我会动态添加其余选项

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

<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;
  • 它也清除了硬编码选项。
  • 我的需求是,我想单独清除动态创建的选项..而不是硬编码选项。

1 个答案:

答案 0 :(得分:3)

你试过这个吗?

document.getElementById("connectionname").options.length = 1;