0

我有一个带有多个文件选择的表单。我只想通过 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() {
        }

      });
});

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

4

4 回答 4

1

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

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

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

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

于 2012-02-03T06:32:24.810 回答
0

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

于 2012-02-03T06:29:02.453 回答
0

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

于 2012-02-03T06:32:05.393 回答
0

您可以使用此上传器http://www.uploadify.com/documentation/options/width/

于 2012-02-03T06:32:12.923 回答