本例用了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. bzoj 2277 [Poi2011]Strongbox 数论

    2277: [Poi2011]Strongbox Time Limit: 60 Sec  Memory Limit: 32 MBSubmit: 527  Solved: 231[Submit][Sta ...

  2. K8S dashboard 创建只读账户

    1.创建名字为“Dashboard-viewonly“的Cluster Role,各种资源只给予了list,get,watch的权限.dashboard-viewonly.yaml --- apiVe ...

  3. Spring Cacheable 注解不缓存null值

    用Cacheable注解时,发现空值,也会被缓存下来.如果我们期望空值不被缓存,可以做如下设置: @Cacheable(key = "#id", unless="#res ...

  4. jQuery UI基本使用方法

    其实jQuery UI早就在我的学习计划中,只不过因为计划安排始终处于待命状态,最近项目要用到jQuery UI,就提前学习一下,也想能够封装自己的UI库,这样就不用老按照别人的套路走了,像使用jQu ...

  5. protoc

    平台安装: 在window 平台使用的工具protoc.zip linux平台的安装方式. 执行在windos平台上执行生成java代码命令: protoc --java_out=./ Keyword ...

  6. Logitech K810 + Ubuntu

    The Logitech K810 is a nice keyboard, but it does not work with Ubuntu out of the box. Still contrar ...

  7. 使用 jQuery 避免鼠标双击

    介绍 当用户双击DOM对象(例如按钮和链接等)时,对于用户交互一直是个麻烦的问题. 幸运的是, jQuery 提供了一个相当棒的解决方法. 那就是.one(). .one()这个方法是做什么的? 它附 ...

  8. 【BZOJ】2466: [中山市选2009]树 高斯消元解异或方程组

    [题意]给定一棵树的灯,按一次x改变与x距离<=1的点的状态,求全0到全1的最少次数.n<=100. [算法]高斯消元解异或方程组 [题解]设f[i]=0/1表示是否按第i个点的按钮,根据 ...

  9. nth-child,nth-last-child,only-child,nth-of-type,nth-last-of-type,only-of-type,first-of-type,last-of-type,first-child,last-child伪类区别和用法

    我将这坨伪类分成三组,第一组:nth-child,nth-last-child,only-child第二组:nth-of-type,nth-last-of-type,第三组:first-of-tpye ...

  10. JS跳转页面常用的几种方法

    第0种:(常用) function triggerAOnclick(){ window.open("http://localhost/jwxt/forward/2TrainSchemeDat ...