我有一个包含mulitiple文件选择的表单。我只想通过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() {
}
});
});
这里我无法传递文件参数。任何建议
答案 0 :(得分:1)
您可以创建一个FormData
对象并发送它。
https://developer.mozilla.org/en/DOM/XMLHttpRequest/FormData
请参阅“使用FormData对象发送文件”下的示例代码:
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest
答案 1 :(得分:0)
由于安全限制,不允许通过AJAX将AFAIK文件发送到服务器。不同的库以不同的方式处理此问题 - 请参阅您的库文档。
答案 2 :(得分:0)
您不能上传普通ajax文件,典型的解决方法是涉及flash或(ab)使用iframes。 https://github.com/blueimp/jQuery-File-Upload应该是一个很好的图书馆,可以帮助你入门......
答案 3 :(得分:0)