首页 > 解决方案 > 克隆

问题描述

我的网站上有两个下拉菜单。

第一个是使用对我的数据库的ajax调用填充的,它返回一些json。

我希望第二个是第一个的精确副本,但少了一个选项:在第一个下拉列表中选择的选项。

在 jQuery 中有没有方便的方法来做到这一点?

这是我到目前为止所尝试的:

$('#first').find('option').clone().find('option:selected').remove().end().appendTo('#second');

但这只会克隆它,而不会删除选定的选项。

任何帮助深表感谢!

标签: javascriptjquery

解决方案


您可以使用该方法过滤掉选定的选项not(),然后将克隆的集合附加到第二个下拉列表中:

$('#first option').not(':selected').clone().appendTo('#second');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="first">
  <option>1</option>
  <option selected>2</option>
  <option>3</option>
</select>

<select id="second"></select>


推荐阅读