【问题标题】:input multiple files and separate them into individual forms输入多个文件并将它们分成单独的表格
【发布时间】:2012-06-13 21:37:12
【问题描述】:

我之前发布了similar question,但没有找到合适的解决方案。

我已经简化了要求:

  1. 用户可以选择多个文件
  2. 从选定的文件中,将每个文件放在单独的表单中
  3. 分别提交每个表单

我正在努力实现第二步。任何帮助都会很棒。欢迎所有想法。

【问题讨论】:

  • 如果我们能够从您的其他问题中拆分文件,您将在此处执行相同操作。请不要重复发布:)
  • 猜测您需要避免提交表单并使用 ajax,因为出于安全原因,javascript 无法设置文件输入。为此,您可能会使用 File API。
  • @Scott S - 目标是将该文件拆分并保存在一个表单中,直到用户仅提交该特定表单,我目前无法这样做。
  • @Prusse - 感谢您的提示,我一直在查看 FILE API。如果您进一步解释我可以从 FILE API 中准确使用什么,那就太好了?干杯

标签: javascript html file input


【解决方案1】:

有些东西在行中......

HTML:

<input type="file" multiple onchange="handleFiles(this.files)">

JavaScript:

function handleFiles(files){
  //create/associates a form with each file ("files.length" files)
  // ... do stuff ...
}

function doAllSubmits(){
  // for each form call "doAsubmit"
}

function doASubmit(some_id, callback){
  // instantiate a XmlHttpRequest
  // (or use jquery or any other library you're using)
  // use a POST method
  // (if I remember GET has(may have) query size limitations)
  // populate with the form data
  // plus the respective file data
  // (maybe with readAsDataURL)
}

使用引用的组件的一些示例:

Using_files_from_web_applications(MDN)

DOM/FileReader(MDN)

【讨论】:

    猜你喜欢
    • 2018-05-24
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多