Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Django:使用AJAX上载文件时出现问题_Javascript_Jquery_Ajax_Django_Upload - Fatal编程技术网

Javascript Django:使用AJAX上载文件时出现问题

Javascript Django:使用AJAX上载文件时出现问题,javascript,jquery,ajax,django,upload,Javascript,Jquery,Ajax,Django,Upload,我在Django中尝试使用Ajax上传文件时遇到问题。我在Javascript上使用FormData。但问题出在服务器端。文件作为dataURL到达request.POST,它应该到达request.files,但它是空的 这是我的代码: var form_data = new FormData(document.getElementById("form-theme-edit")), url = "/theme/edit/1"; $.ajax({ "url" : url,

我在Django中尝试使用Ajax上传文件时遇到问题。我在Javascript上使用FormData。但问题出在服务器端。文件作为dataURL到达request.POST,它应该到达request.files,但它是空的

这是我的代码:

var form_data = new FormData(document.getElementById("form-theme-edit")),
    url = "/theme/edit/1";

$.ajax({
    "url" : url,
    "method" : "POST",
    "enctype": "multipart/form-data",
    "data" : form_data,
    "processData" : false
});

您需要将
contentType
选项设置为
false
,以防止jQuery在构造请求负载时试图将
FormData
对象强制为URL编码的字符串。另外,
enctype
不是有效的
$.ajax
选项,因此您应该删除该选项。

Django不应该对您的请求有任何不同的处理。浏览器对您的请求有何评论?检查Chrome开发者工具,查看数据是如何发送的。