Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 克隆文件输入时,克隆的输入不会保留上载的文件。原始输入不起作用_Javascript_Jquery_File_Input_Input Type File - Fatal编程技术网

Javascript 克隆文件输入时,克隆的输入不会保留上载的文件。原始输入不起作用

Javascript 克隆文件输入时,克隆的输入不会保留上载的文件。原始输入不起作用,javascript,jquery,file,input,input-type-file,Javascript,Jquery,File,Input,Input Type File,克隆输入类型文件时,上载到克隆输入的文件会附着到原始输入。就好像克隆的输入表示并获取原始输入的附件一样 我用以下方式克隆它: clonedInput=$('input[type=file]')。克隆(true) 是否可以克隆文件输入并独立使用? 还是有别的办法解决这个问题 在dom上,用户可以通过单击复制第一个输入的按钮来上载多个文件,但复制不起作用,因为它将文件附加到原始输入。使用多个属性在单个输入类型=“file”元素上载多个文件 <input type="file" multiple

克隆输入类型文件时,上载到克隆输入的文件会附着到原始输入。就好像克隆的输入表示并获取原始输入的附件一样

我用以下方式克隆它: clonedInput=$('input[type=file]')。克隆(true) 是否可以克隆文件输入并独立使用? 还是有别的办法解决这个问题


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

使用
多个
属性在单个
输入类型=“file”
元素上载多个文件

<input type="file" multiple />

使用
multiple
属性在单个
input type=“file”
元素上载多个文件

<input type="file" multiple />

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

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

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

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

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

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

您无法设置输入的值。因此克隆将不具有该值。此外,在现代浏览器中,用户应该能够通过一次输入选择多个文件。您真的需要吗?听起来您可能需要手动为克隆的输入指定一个唯一的ID,否则克隆可能使用与原始输入相同的ID,因此附件也与原始输入关联。我确实更改了ID和name属性,但它仍然不起作用。实际上我有multiple属性,但是用户应该能够克隆包含第二次提交的文件输入的表单。您不能设置输入的值。因此克隆将不具有该值。此外,在现代浏览器中,用户应该能够通过一次输入选择多个文件。您真的需要吗?听起来您可能需要手动为克隆的输入指定一个唯一的ID,否则克隆可能使用与原始输入相同的ID,因此附件也与原始输入关联。我确实更改了ID和name属性,但它仍然不起作用。实际上我有multiple属性,但是用户应该能够克隆包含第二次提交的文件输入的表单,这是一种有点黑客的方式。你试过我的答案了吗?这有点老套。你试过我的答案了吗?