克隆文件输入时,克隆的输入不保留上载的文件。原始输入确实如此

时间:2016-02-19 18:55:05

标签: javascript jquery file input input-type-file

当我克隆输入类型文件时,上传到克隆输入的文件会附加到原始输入。就像克隆的输入代表并获取原始附件一样。

我通过以下方式克隆它: clonedInput = $('输入[type = file]')。clone(true) 是否可以克隆文件输入并独立使用它? 还是有另一种方法来解决这个问题。

在dom上,用户可以选择通过单击复制第一个输入的按钮来上传多个文件,但副本不起作用,因为它将文件附加到原始输入。

3 个答案:

答案 0 :(得分:0)

使用multiple属性在单个input type="file"元素上传多个文件

<input type="file" multiple />

答案 1 :(得分:0)

尝试为克隆项目提供一个唯一的ID,如下所示:

clonedInput = $('input[type=file]').clone(true).attr("id",function(i,oldVal) {
            return oldVal.replace(/\d+/,function(m){
                return (+m + 1);
            });

答案 2 :(得分:0)

该问题的解决方案是将html转换为带有.prop(“outerHTML”)的字符串,然后将其转换回带有$ .parseHTML()的html元素,这样dom会将其视为全新的或新鲜元素。