从另一个列表框填充一个列表框


Populate a listbox from another listbox

我希望有两个列形式的列表框。左边的列表框应该包含我的参考项,右边的列表框将开始为空。我希望能够双击左侧列表框中的项目,并让它们出现在右侧列表框中。

我认为这应该是一个简单的任务,我看到它在很多地方完成,但我找不到任何例子如何做。

你可以这样做,并遵循逻辑

HTML部分

<select name="select1" id="select1">
<option value="1">Fruit</option>
<option value="2">Animal</option>
<option value="3">Bird</option>
<option value="4">Car</option>
</select>

<select name="select2" id="select2">
<option value="1">Banana</option>
<option value="1">Apple</option>
<option value="1">Orange</option>
<option value="2">Wolf</option>
<option value="2">Fox</option>
<option value="2">Bear</option>
<option value="3">Eagle</option>
<option value="3">Hawk</option>
<option value="4">BWM<option>
</select>

javascript部分

$("#select1").change(function() { 
if($(this).data('options') == undefined){
    /*Taking an array of all options-2 and kind of embedding it on the select1*/
    $(this).data('options',$('#select2 option').clone());
    } 
var id = $(this).val();
var options = $(this).data('options').filter('[value=' + id + ']');
$('#select2').html(options);
});

所以你会看到,如果你从listbox1中选择一些东西,它会改变listbox2。希望对你有所帮助