jquery - 克隆 <select> 并添加删除按钮

标签 jquery html smarty

在我的模板文件中,我有类似的内容:

<select name="author[]">
{section name="something" loop=$something} 
<option value="{$something[something].name}">{$something[something].name}</option>
{/section}
</select> 

我想要的是创建一个按钮,添加另一个 select 元素,显示与我的第一个 select 元素相同的 options。我怎样才能使用 jQuery 做到这一点?

这个jsfiddle做我想要的相同概念。但添加文本输入而不是选择输入。此外,它不会从第一个输入中添加任何值。

我想要的是一个按钮,它复制我的选择代码并再次显示它及其所有选项,并为每个额外的选择元素添加一个删除按钮,就像我提供的示例一样。

[编辑]

现在我知道我可以使用clone 来复制元素。但是,我似乎无法找到一种方法来为我克隆的每个元素添加一个删除按钮。那怎么办?

[编辑2]

JSfiddle完成添加删除按钮的工作。但是,我不希望删除按钮显示在我原来的 select 元素上

[编辑3]

通过使用 CSS 隐藏第一个 select 元素的删除按钮,我设法获得了我想要的东西,请参阅 JSFIDDLE .不过,我希望看到它只使用 jQuery 来执行。

最佳答案

你可以使用 jquery clone .

像这样:

$('[name="author[]"]').clone().appendTo('#your_div_id_where_you_want_it');

你可能想给你的选择框一个 id,让选择和克隆看起来更干净。此外,name 属性中的 [] 可能会导致问题,因此制作 id 也可以解决该问题。如果要添加 id,选择将如下所示:

<select id="author" name="author[]">

然后克隆行看起来像这样:

  $('#author').clone().appendTo('#your_div_id_where_you_want_it');

关于jquery - 克隆 <select> 并添加删除按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15440755/

相关文章:

jquery - 一篇文章中有多个图像,但全部在一个容器中

java - 如何将我的 LibGDX 游戏部署到我的网站?

javascript - 动态添加下拉菜单并排除所选选项

javascript - 我如何在 JS 中单独插入一个 URL 到所有数组元素

javascript - javascript中的smarty变量

jquery - 设置变量未定义和 null

javascript - 如何使用 javascript 将元素替换为文本区域

javascript - 如何更改 select2 css

smarty - 获取 Prestashop 主题中的类别

javascript - 在 Smarty 模板中使用标签 &lt;script&gt; 和 if