JavaScript +将项目添加到下拉列表中

Viv*_*vek 2 javascript drop-down-menu

我的JSP页面中有两个下拉列表

1. lstA
     test1
     test2
     test3
     test4

2. lstB
Run Code Online (Sandbox Code Playgroud)

现在选择lstA时,我希望将lstA的所有项目填充到lstB中,除了select选项之外,lstA的内容也应该保持不变.

我怎样才能做到这一点?

我试图这样做,但是从lstA中删除了一些随机的项目,这非常有线.

chr*_*ris 8

你的回答几乎是正确的.

注意事项:您需要在添加之前清除客户端列表,否则您最终会在其上添加越来越多的项目,并且需要在将选项添加到客户端列表之前克隆该选项,因为节点只能存在于1父母随时.

这已经过测试并适合我:

<html><body>
<script language="javascript">
function populateClient() {
     var serverList = document.getElementById("dropdown1");
     var clientList = document.getElementById("dropdown2");

     clientList.options.length = 0; // this removes existing options

     for (var i = 0; i <= serverList.options.length; i++) {
         if (!serverList.options[i].selected) {
             clientList.options.add(serverList.options[i].cloneNode(true)); // cloneNode here
         }
     }
 }
</script>

<select id="dropdown1" onchange="populateClient()">
    <option value="value1">value1</option>
    <option value="value2">value2</option>
    <option value="value3">value3</option>
    <option value="value4">value4</option>
    <option value="value5">value5</option>
</select>
<select id="dropdown2">
</select>
</body></html>
Run Code Online (Sandbox Code Playgroud)