我发现这个JSFiddle可以满足我的需要。但是,我希望盒子是内联的,按钮是箭头。
所以我在上面修改了这个JSFiddle。
1)然而,这不起作用。有人可以帮忙解决我做错了什么吗?我无法从左到右移动元素,反之亦然。
2)我还希望我的选择框的宽度和高度最初没有滚动条固定。对于例如说6个选项。但是,如果选项数量增加(例如,它变为10),则应自动显示滚动条。有人能指点我一些教程吗?
我的代码:
HTML:
<div class="bloc">
<select id="list1" multiple="multiple" rows=2>
<option value=1>Option 1</option>
<option value=2>Option 2</option>
<option value=3>Option 3</option>
<option value=4>Option 4</option>
<option value=5>Option 5</option>
<option value=6>Option 6</option>
</select>
</div>
<div style="display:inline-block;">
<input id="button1" type="button" value=">>" />
<br/>
<input id="button2" type="button" value="<<" />
</div>
<div class="bloc">
<select id="list2" multiple="multiple" rows=2>
</select>
</div>
使用Javascript:
$(function(){
$("#button1").click(function(){
$("#list1 > option:selected").each(function(){
$(this).remove().appendTo("#list2");
});
});
$("#button2").click(function(){
$("#list2 > option:selected").each(function(){
$(this).remove().appendTo("#list1");
});
});
});
CSS:
.bloc { display:inline-block; vertical-align:top; border:solid grey 1px; width:100px;}
答案 0 :(得分:0)
你在小提琴中缺少jQuery。在您的工作示例下面只有一个更改,即添加了jquery导入。
<强>被修改强>
$(function() {
$("#button1").click(function() {
$("#list1 > option:selected").each(function() {
$(this).remove().appendTo("#list2");
});
});
$("#button2").click(function() {
$("#list2 > option:selected").each(function() {
$(this).remove().appendTo("#list1");
});
});
});
.bloc {
display: inline-block;
vertical-align: top;
/*border: solid grey 1px;*/
/*width: 100px;*/
height: 80px;
}
.bloc select {
width: 100px;
height: 100%;
overflow: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="bloc">
<select id="list1" multiple="multiple">
<option value=1>Option 1</option>
<option value=2>Option 2</option>
<option value=3>Option 3</option>
<option value=4>Option 4</option>
<option value=5>Option 5</option>
<option value=6>Option 6</option>
</select>
</div>
<div class="bloc">
<input id="button1" type="button" value=">>" />
<br/>
<input id="button2" type="button" value="<<" />
</div>
<div class="bloc">
<select id="list2" multiple="multiple">
</select>
</div>