参考this question我需要一个解决方案:
HTML:
<input type="file" />
<span id="add-more-files">Add more</span>
jQuery的:
$('#add-more-files').click(function()
{
var cloned = $(this).prev().clone();
$(cloned).insertBefore($(this));
});
答案 0 :(得分:1)
注意:你真的应该问一个新问题,不要只是复制你的旧问题,让人们跳来找出你想要的东西。
假设HTML:
<div class="wrap"><input type="file" /></div>
<span id="add-more-files">Add more</span>
你可以这样做:
$('#add-more-files').click(function(){
$("<div>", {class:"wrap"}) //Create a div
.append($("<input>", {type:'file'})) //Add an input element
.insertBefore(this); //Insert it into the DOM
});
这将创建一个新的div和输入标记结构,然后在可点击范围之前将其插入DOM。有关工作示例,请参阅here。
注意:它不会在同一个div中插入新输入。如果这是你想要的,请看@ jAX的答案。
答案 1 :(得分:-1)
$('#add-more-files').click(function()
{
$('<input type="file" />').insertBefore($(this));
});