jQuery Ajax文件上传
我可以使用下面的jQuery代码,使用ajax请求的POST方法执行文件上传吗?
$.ajax({
type: "POST",
timeout: 50000,
url: url,
data: dataString,
success: function (data) {
alert('success');
return false;
}
});
如果可以的话,我是否需要填写data
部分?这是正确的方法吗?我只把文件POST到服务器端。
我一直在搜索,但我发现的是一个插件,而在我的计划中我不想使用它。至少目前是这样。
715
3
文件上传不是通过Ajax实现的。 你可以在不刷新页面的情况下,通过使用IFrame上传文件。 你可以查看进一步的细节这里 。
更新:
在XHR2中,支持通过AJAX上传文件。例如,通过FormData对象,但不幸的是,它不被所有/旧的浏览器支持。
FormData支持从以下桌面浏览器版本开始。 IE 10以上。 Firefox 4.0以上。 Chrome 7以上。 Safari 5+, Opera 12以上
更多细节,见MDN链接
使用XMLHttpRequest()确实可以实现AJAX上传。没有必要使用iframes。可以显示上传进度。
详见。答案https://stackoverflow.com/a/4943774/873282,问题https://stackoverflow.com/questions/4856917/jquery-upload-progress-and-ajax-file-upload。
更多细节请见我的博文:http://blog.manki.in/2011/08/ajax-fie-upload.html。