JQuery将所有选择选项TEXT移动到另一个选择

时间:2015-02-19 18:30:02

标签: jquery select appendto

如何将所有选项TEXT从一个选项移动到另一个选择?有没有办法在第一个选择中使用收集所有内容然后将每个选项文本附加到另一个选项?

首先选择:

<select class="multiple" name="selectMajors" id="selectMajors" multiple="multiple">
   <option value="description">description id</option>
   <option value="description">description id</option>
   <option value="description">description id</option>
</select>

第二次选择:

<select class="multiple" name="selectedMajors" id="selectedMajors" multiple="multiple">
</select>

所以我想将文本(描述ID)不是selectMajors中3个选项的值移动到selectedMajors。

2 个答案:

答案 0 :(得分:1)

当然有这样的事情:

    $('#selectedMajors').append(
        $('#selectMajors').html()
    ).find('option').removeAttr('value');

请参阅this working example

注意:根据您的请求,这只是将所有选项从一个复制到另一个,而不使用value属性。它没有注意选择的内容。我意识到这可能不是你想到的那样。

HTH, -Ted

答案 1 :(得分:0)

我希望这是你所期望的。

&#13;
&#13;
$(document).ready(function() {

  $("#copy").on("click", function() {
    var copiedOptions = $("#toBeCopied option").removeAttr('value').clone();
    $("#copied").html(copiedOptions);
  })


});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select name="toBeCopied" id="toBeCopied">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
</select>
<select name="copied" id="copied"></select>
<button id="copy">copy</button>
&#13;
&#13;
&#13;