本例用了jquery.form.js请到演示页面查看

CSS Code
  1. <style>
  2. form { display: block; margin: 20px auto; background: #eee; border-radius: 10px; padding: 15px }
  3. #progress { position:relative; width:400px; border: 1px solid #ddd; padding: 1px; border-radius: 3px; }
  4. #bar { background-color: #B4F5B4; width:0%; height:20px; border-radius: 3px; }
  5. #percent { position:absolute; display:inline-block; top:3px; left:48%; }
  6. </style>
XML/HTML Code
  1. <form id="myForm" action="upload.php" method="post" enctype="multipart/form-data">
  2. <input type="file" size="60" name="myfile">
  3. <input type="submit" value="Ajax File Upload">
  4. </form>
  5. <div id="progress">
  6. <div id="bar"></div>
  7. <div id="percent">0%</div >
  8. </div>
  9. <div id="message"></div>
JavaScript Code
  1. <script>
  2. $(document).ready(function()
  3. {
  4. var options = {
  5. beforeSend: function()
  6. {
  7. $("#progress").show();
  8. //clear everything
  9. $("#bar").width('0%');
  10. $("#message").html("");
  11. $("#percent").html("0%");
  12. },
  13. uploadProgress: function(event, position, total, percentComplete)
  14. {
  15. $("#bar").width(percentComplete+'%');
  16. $("#percent").html(percentComplete+'%');
  17. },
  18. success: function()
  19. {
  20. $("#bar").width('100%');
  21. $("#percent").html('100%');
  22. },
  23. complete: function(response)
  24. {
  25. $("#message").html("<font color='green'>"+response.responseText+"</font>");
  26. },
  27. error: function()
  28. {
  29. $("#message").html("<font color='red'> ERROR: unable to upload files</font>");
  30. }
  31. };
  32. $("#myForm").ajaxForm(options);
  33. });
  34. </script>

upload.php

PHP Code
  1. <?php
  2. $output_dir = "../upload/";
  3. if(isset($_FILES["myfile"]))
  4. {
  5. //Filter the file types , if you want.
  6. if ($_FILES["myfile"]["error"] > 0)
  7. {
  8. echo "Error: " . $_FILES["file"]["error"] . "<br>";
  9. }
  10. else
  11. {
  12. //move the uploaded file to uploads folder;
  13. move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir. $_FILES["myfile"]["name"]);
  14. echo "Uploaded File :".$_FILES["myfile"]["name"];
  15. }
  16. }
  17. ?>

一个简单的ajax上传 上传进度显示的更多相关文章

  1. 不带插件 ,自己写js,实现批量上传文件及进度显示

    今天接受项目中要完成文件批量上传文件而且还要显示上传进度,一开始觉得这个应该不是很麻烦,当我在做的时候遇到了很多问题,很头疼啊. 不过看了别人写的代码,自己也测试过,发现网上好多都存在一些问题,并不是 ...

  2. Retrofit2文件上传下载及其进度显示

    序 前面一篇文章介绍了Retrofit2的基本使用,这篇文章接着介绍使用Retrofit2实现文件上传和文件下载,以及上传下载过程中如何实现进度的显示. 文件上传 定义接口 1 2 3 @Multip ...

  3. 用Qt写软件系列三:一个简单的系统工具(上)

    导言 继上篇<用Qt写软件系列二:QIECookieViewer>之后,有一段时间没有更新博客了.这次要写的是一个简单的系统工具,需求来自一个内部项目.功能其实很简单,就是查看当前当前系统 ...

  4. Ajax得知(两)—— 一个简单的Ajax示例

    通过部分博客认识Ajax之后,我们通过一个简单的实例来消化消化理论知识,一睹Ajax的庐山真面目. 1.实例功能: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZ ...

  5. 一个简单的AJAX实例

    创建一个简单的XMLHttpRequest,从一个TXT文件中返回数据. 来源于菜鸟教程 <!DOCTYPE html><html><head><meta c ...

  6. 一个简单的安卓+Servlet图片上传例子

    例子比较 简单,服务端为Java Web Servlet,doPost方法中接收图片并保存,然后将保存的图片名返回给客户端,关键代码: @SuppressWarnings("deprecat ...

  7. ajax上传文件及进度显示

    之前在博文:原生ajax写法就提及过ajax2.0与1.0的差别是多了FormData和利用FormData文件上传(当然还有跨域,但不是本文的重点). 那么具体怎么样实现ajax上传文件呢? 一般来 ...

  8. React Native ——实现一个简单的抓取github上的项目数据列表

    /** * Sample React Native App * https://github.com/facebook/react-native */ 'use strict'; var React ...

  9. 一个简单的AJAX示例(转)

    转载自:http://www.cnblogs.com/rubylouvre/archive/2013/01/08/2851051.html,为了防备面试,备份一份吧!! 虽然现在有了框架,许多AJAX ...

随机推荐

  1. OpenCV---边缘保留滤波EPF

    OpenCV经典的两种实现EPF方法:高斯双边和均值迁移 一:双边模糊 差异越大,越会完整保留 def bi_demo(image): dst = cv.bilateralFilter(image,0 ...

  2. Win7 32位安装Oracle11g R2 图解示例

    Win7 32位操作系统安装Oracle11g R2 图解示例.废话不说了,直接上图. 1.下载的两个oracle 11gR2压缩包解压到单独的文件夹中. 2.找到解压的database文件夹中的Se ...

  3. vector的哈希值 Codecraft-17 and Codeforces Round #391 (Div. 1 + Div. 2, combined) C

    http://codeforces.com/contest/757/problem/C 题目大意:有n个导管,每个体育馆有k种神奇宝贝,然后所有的n个体育馆中,一共有m中神奇宝贝.可知,每个神奇宝贝中 ...

  4. JVM调优总结(2):基本垃圾回收算法

    可以从不同的的角度去划分垃圾回收算法: 按照基本回收策略分 引用计数(Reference Counting): 比较古老的回收算法.原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数. ...

  5. 实用技巧:如何用 CSS 做到完全垂直居中

    本文将教你一个很有用的技巧——如何使用 CSS 做到完全的垂直居中.我们都知道 margin:0 auto; 的样式能让元素水平居中,而 margin: auto; 却不能做到垂直居中……直到现在.但 ...

  6. 【BZOJ】1415 [Noi2005]聪聪和可可 期望DP+记忆化搜索

    [题意]给定无向图,聪聪和可可各自位于一点,可可每单位时间随机向周围走一步或停留,聪聪每单位时间追两步(先走),问追到可可的期望时间.n<=1000. [算法]期望DP+记忆化搜索 [题解]首先 ...

  7. CentOS7 升级gcc版本

    CentOS7自带的GCC版本是4.8.5,如下所示: # cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) # which g ...

  8. HDU 2319 Card Trick (模拟)

    题目链接 Problem Description The magician shuffles a small pack of cards, holds it face down and perform ...

  9. wget下载整个网站或特定目录

    下载整个网站或特定目录 wget -c -k -r -np -p http://www.yoursite.com/path -c, –continue 断点下载 -k, –convert-links ...

  10. python基础===用9种方式生成新的对象

    class Point: def __init__(self, x, y): self.x = x self.y = y point1 = Point(1, 2) point2 = eval(&quo ...