从html读取文件到jquery,然后将其上传到ajax

时间:2019-01-03 05:55:59

标签: javascript jquery ajax

我有一个HTML输入标签

<input id="fileId" type="file" name="fileId" style="display:none;">

我需要使用javascript接收此文件对象,以使其通过ajax在后端传递。

我正在使用下面的行来获取文件对象。

var fileObject = $('#fileId').prop('files')[0]

我可以使用此行代码接收文件对象。

我的ajax代码是:

$.ajax({
  type: 'POST',
  url: '/urlname/',
  data: {"file_object": fileObject},
  success: function(data) {
    console.log(data)
 }
});

我无法执行ajax代码,因为它在通过ajax解析对象时会产生非法调用错误。 下面是错误跟踪:

jquery.min.js:2 Uncaught TypeError: Illegal invocation
    at i (jquery.min.js:2)
    at jt (jquery.min.js:2)
    at Function.w.param (jquery.min.js:2)
    at Function.ajax (jquery.min.js:2)
    at HTMLButtonElement.<anonymous> (index.js:36)
    at HTMLButtonElement.dispatch (jquery.min.js:2)
    at HTMLButtonElement.y.handle (jquery.min.js:2)
    i @ jquery.min.js:2
    jt @ jquery.min.js:2
    w.param @ jquery.min.js:2
    ajax @ jquery.min.js:2
    (anonymous) @ index.js:36
    dispatch @ jquery.min.js:2
    y.handle @ jquery.min.js:2

此外,我需要在Django的views.py中读取此文件对象。

0 个答案:

没有答案