我正在尝试克隆一个文件输入表单,每次我选择一个文件然后单击“添加更多”来克隆文件输入,但它已复制输入中的选定文件.
<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));
});
演示:jsFiddle .
现在,每当您在克隆前一个文件之前选择一个文件时,您都可以看到它选择了相同的文件,我需要在克隆时将其为空。
编辑:
我怎样才能克隆这个,引用Neal's answer ?
<div class="wrap"><input type="file /></div>
<span id="add-more-files">Add more</span>
最佳答案
您可以尝试的是:
$('#add-more-files').click(function()
{
var cloned = $(this).prev().clone();
cloned.val(null);
$(cloned).insertBefore($(this));
});
更新
或者,如果所有输入都是前一个输入的副本,则只需创建一个新输入而不是克隆:
$('#add-more-files').click(function()
{
var cloned = $(this).prev();
$('<input>',{type:cloned.attr('type')}).insertBefore($(this));
});
关于jquery - 来自 .clone() 的空文件输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5598613/