javascript - 合并/组合文件列表

标签 javascript jquery html object filelist

我有两个 Filelist 对象,其中包含同一表单的多个文件,我想合并它。

  var data1 = $('#one')[0].files;
  var data2 = $('#two')[0].files;
  console.log(data1);
  console.log(data2);
  var obj = $.merge(data1,data2);
  console.log(obj);

我尝试了$.merge$.extend,结果obj似乎包含了所有文件,但它的长度不正确:

FileList {2: File, 3: File, 0: File, 1: File, length: 2}

jsFiddle:https://jsfiddle.net/nxtdnhgu/

最佳答案

来自 jquery 文档。

$.merge() 函数具有破坏性。它更改第一个对象的长度和数字索引属性以包含第二个对象中的项目。

如果您需要原始的第一个数组,请在调用 $.merge() 之前复制它。

var obj = $.merge( $.merge( [], data1 ), data2 );

工作 js fiddle :https://jsfiddle.net/t1n08ykd/

关于javascript - 合并/组合文件列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30593963/

相关文章:

javascript - 创建嵌套数组javascript

javascript - 在 React 中显示更多信息

javascript - 如何在外部 Javascript 中正确使用它?

css - 在 DIV 中水平居中 UL

javascript - 在 Aurelia 中防止 CSRF 攻击

javascript - 使用 Javascript/JQuery 将页面上的数据存储到变量

javascript - 如何在包含 Bootstrap 的情况下将文本输入的宽度设置为 0px?

javascript - 如何让tooltipsy随鼠标移动

jquery - Div inside div,背景大小调整不起作用(使用视差效果)?

html - 如何阻止文本框和按钮移动