【问题标题】:Using javascript/jquery on file input field在文件输入字段上使用 javascript/jquery
【发布时间】:2012-02-03 06:26:17
【问题描述】:

我有一个带有多个文件选择的表单。我只想通过 AJAX 将每个文件发送到服务器(通过多选选择)。

我可以使用

document.getElementById('attachment_file').files

我想使用类似的东西

var files = document.getElementById("attachment_file").files
$.each(files, function(index, file11){
       $.ajax({
        url: "/users",
        type: 'POST',
        dataType: 'json',
        data: {doc: {title: file11}},
        async: false,
        success: function() {
        }

      });
});

在这里我无法传递文件参数。任何建议

【问题讨论】:

    标签: javascript jquery html file-upload multifile-uploader


    【解决方案1】:

    您可以创建一个FormData 对象并发送它。

    https://developer.mozilla.org/en/DOM/XMLHttpRequest/FormData

    请参阅“使用 FormData 对象发送文件”下的示例代码:

    https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

    【讨论】:

    • 好主意,但大多数浏览器不支持
    【解决方案2】:

    由于安全限制,不允许通过 AJAX 将 AFAIK 文件发送到服务器。不同的库以不同的方式处理此问题 - 请参阅您的库文档。

    【讨论】:

      【解决方案3】:

      您不允许上传带有普通 ajax 的文件,典型的解决方法是使用 flash 或 (ab)use o iframe。 https://github.com/blueimp/jQuery-File-Upload 应该是一个很好的库,可以帮助您入门...

      【讨论】:

        【解决方案4】:

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-01-22
          • 1970-01-01
          • 2012-06-06
          • 2015-09-20
          • 2012-11-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多