如何使用javascript用一个按钮交换两个DropDownList
如何更改两个DropDownList的值。什么意思是像普通DDL一样,用按钮或箭头图标交换其他下拉列表的值。HTML:如何使用javascript用一个按钮交换两个DropDownList,javascript,html,Javascript,Html,如何更改两个DropDownList的值。什么意思是像普通DDL一样,用按钮或箭头图标交换其他下拉列表的值。HTML: <label>Browser Select 1</label> <select class="browser-default" id="drop1"> <option value="" disabled selected>Choose your option</option> <option
<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>
纯javascript,这要归功于:
您可以按如下方式执行此操作: 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>
下面是一个使用上述代码的示例。这允许多选并双击项目或按钮进行移动。到目前为止,您尝试过做什么?在下拉列表中交换值与在数组中交换值的概念相同。例如,单位转换器将cm转换为m,但我想按下按钮并显示m到cm,因此将dropdownlist与dropdownlist 2交换并显示转换现在我感到困惑,是否要交换文本中单词下拉列表中的
值
?您将需要给出一个代码示例。是的,我想将DDL 1和DDL 2中的值转换为OP不使用jQuery。@ SpencerWieczorek现在可以考虑它。如果在问题中没有包含<代码> jQuery < /代码>标签,我将避免给出使用jQuery的解决方案。或者提供一个包含纯JS的解决方案。是的,那么如何与纯JS交换呢javascript@HaroonIqbal&Spencer:我在纯JS中尝试过,但我真的不知道如何在没有jQuery的情况下实现find
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;
}
<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>
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);
};
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);
});