Iframe文件上传的进度条?

Iva*_*van 5 html javascript iframe jquery

我目前正在开发一个Web应用程序,允许用户上载文件而无需重新加载页面.到目前为止,用户可以浏览文件,当输入更改时,使用以下iframe技术上传文件:

HTML:

<iframe name="iframe-target" src="./Image" style="display:none;"></iframe>
<form method="POST" enctype="multipart/form-data" id="old-style-upload" target="iframe-target" action="./Image"> 
   <input type="file" name="files[]" multiple id="old-file-picker" >
</form>
Run Code Online (Sandbox Code Playgroud)

使用Javascript/jQuery的:

$('#old-file-picker').change(function ()  {
  // Submit the form
  $('#old-style-upload').submit();
});
$('iframe[name=iframe-target]').load(function () {
  // Code that deals with the newly uploaded files
  $('#old-style-upload').get(0).reset();
});
Run Code Online (Sandbox Code Playgroud)

这很好用,但是,用户无法知道文件正在上传,也无法知道需要多长时间.有没有办法制作一个显示文件上传进度的进度条?

我唯一能想到的就是显示一个加载的gif.

pQd*_*pQd 2

为此,如果您使用常规的多部分/表单数据表单发布,则需要在服务器端有代码;可以将进度反馈给客户端浏览器中运行的 JavaScript。看看这个之前提出的问题。或者,您可以使用 Flash(但您可能不想)或 HTML 5。您可以查看该问题以及有关 XMLHTTPRequests 的问题