`
sxl_bruce
  • 浏览: 4083 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

进度条

阅读更多
最后来个带上传进度的文件上传。这里需要AJAX的知识,不懂的朋友可以先去了解下。

先看页面的代码

Html代码
<h2>文件上传显示进度</h2>  
<iframe id='target_upload' name='target_upload' src='' style='display: none'></iframe>  
<form id="form3" method="POST" enctype="multipart/form-data" action="AJAXFileUploadServlet" target="target_upload">  
    <input type="file" name="myFile"/><br/>  
    <input type="button" value="提交" id="myButton"/><br/>  
</form>  
<div id="show"></div> 

<h2>文件上传显示进度</h2>
<iframe id='target_upload' name='target_upload' src='' style='display: none'></iframe>
<form id="form3" method="POST" enctype="multipart/form-data" action="AJAXFileUploadServlet" target="target_upload">
<input type="file" name="myFile"/><br/>
<input type="button" value="提交" id="myButton"/><br/>
</form>
<div id="show"></div>
细心的朋友发现多一个iframe和div,iframe的作用是,当我们要显示上传进度的时候,一定是要求页面不能刷新的,因此你会发现form的target属性等于iframe的name属性,也就是说,当form提交数据的时候,当前页面不会刷新,而是iframe刷新了,而iframe又是dispaly:none的,所以看起来页面好像是没有发生跳转。div的作用则是用于显示上传进度。
接下来关注服务器的代码部分,想想其实就可以发现,服务器需要两个Servlet,一个正在用于文件上传,而一个则是用来返回AJAX关于上传进度的数据返回。

这里要介绍fileupload中很好用的一个接口,ProgressListener,她可以用来监听文件的上传进度,使用方法很简单,即在文件上传的代码中加入

Java代码 FileItemFactory factory = new DiskFileItemFactory();   
ServletFileUpload upload = new ServletFileUpload(factory);   
upload.setHeaderEncoding("utf8");// 支持中文文件名 

MyProgressListener myProgressListener = new MyProgressListener(request);   
upload.setProgressListener(myProgressListener);//进行文件上传进度监听 
分享到:
评论

相关推荐

    渐变进度条 美化进度条

    在UI设计中,进度条是常见的一种用户界面元素,它用于指示某个操作的进度或状态。"渐变进度条 美化进度条"这个主题着重于如何通过使用渐变色彩来提升进度条的视觉效果,使其看起来更加美观且舒适。渐变色的设计不仅...

    DataGridView进度条 DataGridView进度条 C#

    在处理大量数据或者执行耗时操作时,为用户提供一个进度条是非常有用的,可以提高用户体验,显示数据加载或处理的状态。本文将详细介绍如何在C#中为`DataGridView`添加进度条功能。 首先,我们需要引入`ProgressBar...

    80个GIF进度条,漂亮的动态加载进度条

    在网页设计和用户体验领域,动态加载进度条是一个重要的元素,它能够向用户显示数据或内容正在加载的过程,提高用户对系统响应的认知,并提供更舒适的等待体验。标题提到的"80个GIF进度条"是一套丰富的资源集合,...

    WPF圆形进度条WPF圆形进度条

    **WPF圆形进度条详解** 在Windows Presentation Foundation (WPF) 中,进度条是一种常见的UI控件,用于向用户展示某个任务的完成进度。通常,进度条是线性的,但有时候设计需求会需要非线性的,例如圆形进度条。...

    php进度条php进度条php进度条php进度条php进度条

    例如,它可以有一个`updateProgress($percentage)`方法来接收服务器端的进度信息,并根据百分比更新进度条的样式。 `example.php`可能是使用`class.progress_bar.php`的一个示例。在该文件中,开发者可能会创建一个...

    WPF实现的圆形进度条

    在Windows Presentation Foundation(WPF)中,开发人员可以利用丰富的图形功能来创建各种自定义控件,其中之一就是圆形进度条。这种控件通常用于显示任务的进度,它以环形的方式展示,既美观又直观。在本文中,我们...

    C#自定义进度条大全

    在C#编程中,自定义进度条是一种常见且实用的需求,它可以为用户提供视觉反馈,显示应用程序执行任务的进度。本文将深入探讨如何在C#中实现各种自定义进度条,包括圆滑的、多边形的等不同设计样式,并提供相关的控件...

    无尽的进度条3.0

    "无尽的进度条3.0"是一款专为用户界面设计打造的动态进度条效果工具。这个工具可能被开发者或设计师用于创建具有视觉吸引力的、持续不断的加载效果,以提高用户体验。在某些应用中,例如数据加载、上传或下载过程中...

    NC65进度条功能.rar

    在IT行业中,尤其是在软件开发领域,进度条是一个非常常见的用户界面元素,它为用户提供了一种可视化的方式来了解某个任务的执行进度。在这个名为“NC65进度条功能.rar”的压缩包中,我们关注的是如何在NC65环境中...

    易语言更改进度条颜色

    在编程领域,进度条是一种常见的用户界面元素,用于表示任务执行的进度,为用户提供操作反馈。易语言(E语言)是中国本土开发的一种简单易学的编程语言,它以直观的汉字作为关键字,使得非计算机专业人员也能快速...

    带有文本的进度条

    在Android开发中,进度条(Progress Bar)是一种常见的UI组件,用于显示某个操作的进度或者加载状态。在标题“带有文本的进度条”中提到的,这种进度条不仅具有显示进度的功能,还能够结合文本内容,提供更丰富的...

    C#winform 自定义控件实现圆形进度条和环形进度条控件

    本项目专注于创建两种特殊的进度条控件:圆形进度条和环形进度条,这些控件适用于展示任务或进程的进度,视觉效果独特,能吸引用户注意力。通过VS2017开发,它们可以直接在WinForm应用中编译并运行,为用户提供实时...

    C#进度条 不假死的进度条

    用两个方法实现进度条,切换,最小化恢复窗口,进度条正常,不假死!请用Microsoft Visual Studio 2008打开,或先执行EXE看看是否是自己需要的! 注: 下载资源时,看清楚此文档说明,我不是为了积分而放在这里,我...

    QT实现的特色进度条

    QT实现的特色进度条是一种在GUI(图形用户界面)应用中提供反馈的创新方式,它模仿了地铁站的进度灯效果,为用户提供一种视觉上吸引人的进度指示。Qt是一个跨平台的C++库,用于创建桌面、移动以及嵌入式设备上的应用...

    12款进度条脚本demo

    在网页设计和开发中,进度条是一个非常重要的交互元素,它能够给用户反馈操作的状态,如文件上传、数据加载或任务执行的进度。本资源"12款进度条脚本demo"显然是一份集合了多种进度条实现方式的示例集,主要关注CSS...

    Android 电池电量进度条,上下滚动图片的进度条(battery)

    Android SDK 提供了多种类型的进度条,包括HorizontalProgressBar(水平进度条)和CircularProgressBar(圆形进度条)。在这个场景下,我们可以选择自定义一个水平进度条,通过改变其高度来模拟上下滚动的效果。 1....

    BAT批处理脚本-提示窗口进度条-娱乐进度条.cmd.zip

    标题中的“BAT批处理脚本-提示窗口进度条-娱乐进度条.cmd.zip”指的是一个包含批处理脚本的压缩文件,主要用于在Windows操作系统中展示一个带有进度条的提示窗口。批处理脚本(BAT)是基于DOS或Windows环境下的一种...

    winform竖向进度条

    在Windows Forms(WinForm)开发中,用户界面的构建是至关重要的,而进度条控件是一种常见的元素,用于展示任务的执行进度。在传统的WinForm应用中,进度条通常是水平显示的,但有时为了满足界面设计的需求或者提高...

    c# DataGridView添加进度条

    在某些场景下,我们可能需要在`DataGridView`的某个列中显示进度条,以实时反映任务的执行状态。这就涉及到自定义`DataGridView`列类型和使用进度条控件(如`ProgressBar`)的知识。以下将详细讲解如何实现这个功能...

    c++ MP3播放器进度条创建

    ### C++ MP3播放器进度条创建 #### 知识点概述 本文旨在介绍如何在C++环境下,特别是在Microsoft Visual C++(以下简称VC++)中使用MFC框架创建MP3播放器的进度条。进度条作为一种重要的用户界面元素,不仅能够...

Global site tag (gtag.js) - Google Analytics