从<select>复制突出显示的元素

时间:2018-11-06 21:38:29

标签: javascript html-select

任何人都可以让我知道,如何使用JavaScript(不是jQuery)单击按钮时将突出显示/选定的选项元素从一个选择标签复制到另一个选择? select标签具有size属性,因此不是下拉列表。 函数copy_all(){   var roleList = document.getElementById(“ roles”);   var asgned_roles = document.getElementById(“ asgndroles”);   asgned_roles.innerHTML = roleList.innerHTML; } 函数copy_selected(){   var selected = document.getElementsByTagName(“ OPTION”);   var asgned_roles = document.getElementById(“ asgndroles”);   如果(selected.hasFocus()){     asgned_roles.innerHTML = selected.innerHTML;   } }

1 个答案:

答案 0 :(得分:0)

要获取所选index元素中的option,请使用selectedIndex属性。

要将选项附加到目标select,请使用appendChild()方法。

要从源select中删除该选项,请使用removeChild()方法。

var source_select = document.getElementById("roles");
var target_select = document.getElementById("asgndroles");

function copy_selected() {
  var selected_option = source_select.options[source_select.selectedIndex];
  source_select.removeChild(selected_option);
  target_select.appendChild(selected_option);
}
<select size="5" id="roles">
  <option>Admin</option>
  <option>User</option>
  <option>Super User</option>
  <option>Super Admin</option>
</select>
<select size="5" id="asgndroles">
</select>
<button onclick="copy_selected()">COPY</button>