you almost had it correct in your answer there.
things to note : you need to clear the client list before adding, otherwise you'll end up with more and more items on it, and you need to clone the option before adding it to the client list, because a node can only exist in 1 parent at any time.
this has been tested and works for me :
<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>