使用ajax请求上传文件

时间:2011-05-06 12:57:43

标签: javascript jquery file-upload

  

可能重复:
  How can I upload files asynchronously with JQuery?

我正在提交这样的表格。

  var url = event.currentTarget.action;
  var values = $(this).serialize();

  $.post(url, values, function (data) {
      //some code
  });

现在我有一个带有文件上传输入的表单。使用此代码,文件不会上传。

如何将文件包含在此ajax请求中?如果可能,我不想使用任何插件(除了jQuery)。

1 个答案:

答案 0 :(得分:2)

您只能使用AJAX上传文件,但仅限于某些现代浏览器。我知道它适用于Firefox和Chrome(到目前为止我已经测试过了)。

这里有一些关于它的好消息:https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

作为替代方案,有一个很棒的插件可用于此类事情:

http://jquery.malsup.com/form/

这部分内容可能与您有关:

http://jquery.malsup.com/form/#file-upload

它使用iframe发布以背景方式上传。