如何使用javascript用一个按钮交换两个下拉列表
how to swap two dropdownlists with one button using javascript
如何更改两个下拉列表的值。意思是像普通ddls一样,用按钮或箭头图标交换每个下拉列表的值。
您可以按如下方式进行操作:
HTML
<table>
<tr>
<td>
<select id="mySelect1" size="5" multiple style="width:200px">
<option value="opt1">Option 1</option>
<option value="opt2">Option 2</option>
<option value="opt3">Option 3</option>
</select>
</td>
<td valign="center">
<button id="toRight">►</button><br/>
<button id="toLeft">◄</button>
</td>
<td>
<select id="mySelect2" size="5" multiple style="width:200px">
<option value="opt4">Option 4</option>
<option value="opt5">Option 5</option>
<option value="opt6">Option 6</option>
</select>
</td>
</tr>
</table>
Javascript(纯)
function moveOptionsTo(index) {
var target = document.getElementById('mySelect' + index);
var options = document.getElementById('mySelect' + (3-index)).options;
for (var i = 0; i < options.length; i++) {
if (options[i].selected) {
target.appendChild(options[i]);
i = i - 1;
}
}
}
document.getElementById('toRight').onclick = function() {
moveOptionsTo(2);
};
document.getElementById('toLeft').onclick = function() {
moveOptionsTo(1);
};
document.getElementById('mySelect1').ondblclick = function() {
moveOptionsTo(2);
};
document.getElementById('mySelect2').ondblclick = function() {
moveOptionsTo(1);
};
可选:带有jQuery
的Javascript
function moveOptionsTo(index) {
$('#mySelect' + (3-index) + ' option:selected').appendTo('#mySelect' + index);
}
$('#toRight').click(function() {
moveOptionsTo(2);
});
$('#toLeft').click(function() {
moveOptionsTo(1);
});
$('#mySelect1').dblclick(function() {
moveOptionsTo(2);
});
$('#mySelect2').dblclick(function() {
moveOptionsTo(1);
});
这是一把使用上述代码的小提琴。这允许多选并双击项目或按钮进行移动。
HTML:
<label>Browser Select 1</label>
<select class="browser-default" id="drop1">
<option value="" disabled selected>Choose your option</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
</select>
<label>Browser Select 2</label>
<select class="browser-default" id="drop2">
<option value="" disabled selected>Choose your option</option>
<option value="1">Option 4</option>
<option value="2">Option 5</option>
<option value="3">Option 6</option>
</select>
<button id="switch">switch</button>
JQUERY:
$('#switch').click(function(){
var options1 = $('#drop1').html();
$('#drop1').html($('#drop2').html());
$('#drop2').html(options1);
});
简单的javascript感谢Spencer:
document.getElementById("switch").onclick = function() {
var drop1 = document.getElementById("drop1");
var drop2 = document.getElementById("drop2");
var tempHTML = drop1.innerHTML;
drop1.innerHTML = drop2.innerHTML;
drop2.innerHTML = tempHTML;
}
http://jsfiddle.net/5g550tqq/3/
相关文章:
- 如何使用offer/answer交换来自两个对等连接的流
- 用于交换两个变量的 JavaScript 函数
- 交换对象上两个属性的值
- 如何在Javascript中交换两个列表的子列表
- Dojo:在单页应用程序中交换两个不同的视图
- 如何使用 jQuery 交换网页中的两个图像(连续两次点击)
- 使用jquery可交换地更改两个html输入表单值
- 单击按钮时交换两个图像
- Javascript:交换两个值
- 交换两个 html 元素并保留其上的事件侦听器
- 交换两个在它们之间具有 som 修复标记的 HTML 标记
- 通过单击按钮交换两个自动文本框的值
- 如何使用javascript用一个按钮交换两个下拉列表
- 交换两个翻转动画潜水
- 在JavaScript中交换两个对象
- 如何交换两个元素的位置,包括它们的类/id与onclick
- VueJS:交换两个表单的表单值
- 如何在JavaScript中交换两个日期
- 我如何在两个html元素之间交换两个id's
- 在点击时交换两个项目