关于javascript:使用ajax请求上传文件

Upload file using ajax request

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
How can I upload files asynchronously with JQuery?

我要像这样提交我的表格。

1
2
3
4
5
6
  var url = event.currentTarget.action;
  var values = $(this).serialize();

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

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

如何将该文件包含在这个Ajax请求中?如果可能,我不想使用任何插件(jquery除外)。


您只能使用Ajax上传文件,但只能在一些现代浏览器中。我知道它可以在火狐和Chrome中使用(这是我目前为止测试的全部内容)。

这里有一些关于它的好信息:https://developer.mozilla.org/en-us/docs/web/api/xmlhttprequest/using xmlhttprequest

另一种选择是,有一个很好的插件可以用于这类事情:

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

本部分可能与您有关:

http://jquery.malsup.com/form/文件上传

它使用iframes发布以后台方式上传。