Iframe文件上传的进度条?

时间:2011-12-12 20:14:41

标签: javascript jquery html iframe

我目前正在开发一个允许用户上传文件而无需重新加载页面的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>

的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();
});

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

我唯一能想到的就是展示loading gif

1 个答案:

答案 0 :(得分:2)

要做到这一点,如果你使用常规的multipart / form-data表单,你需要在服务器端有代码;可以将进度反馈给客户端浏览器中运行的JavaScript。看看at this previously asked question。或者,您可以使用Flash(但您可能不想)或HTML 5.您可以查看该问题并this question concerning XMLHTTPRequests