广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >HTML5如何实现上传文件显示进度
  • 800
分享到

HTML5如何实现上传文件显示进度

2024-04-02 19:04:59 800人浏览 八月长安
摘要

这篇文章主要为大家展示了“HTML5如何实现上传文件显示进度”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html5如何实现上传文件显示进度”这篇文章吧。 这

这篇文章主要为大家展示了“HTML5如何实现上传文件显示进度”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html5如何实现上传文件显示进度”这篇文章吧。

这里我们是结合asp.net mvc做为服务端,您也可以是其它的服务端语言。让我们看面这个片断的HTML:

@using (Html.BeginFORM("Upload", "Home", FormMethod.Post, new { enctype = "multipart/form-data" , id="form1"}))

{

<div class="row">

<label for="file">

Upload Image:</label>

<input type="file" name="fileToUpload" id="fileToUpload" multiple="multiple" onchange="fileSelected();" />

</div>

<div id="fileName">

</div>

<div id="fileSize">

</div>

<div id="fileType">

</div>

<div class="row">

<input type="button" onclick="uploadFile()" value="Upload Image" />

</div>

<div id="progressNumber">

</div>

}

相关的javascript是这样的:

function fileSelected() {

var file = document.getElementById('fileToUpload').files[0];

if (file) {

var fileSize = 0;

if (file.size > 1024 * 1024)

fileSize = (Math.round(file.size * 100 / (1024 * 1024)) / 100).toString() + 'MB';

else

fileSize = (Math.round(file.size * 100 / 1024) / 100).toString() + 'KB';

document.getElementById('fileName').innerHTML = 'Name: ' + file.name;

document.getElementById('fileSize').innerHTML = 'Size: ' + fileSize;

document.getElementById('fileType').innerHTML = 'Type: ' + file.type;

}

}

function uploadFile() {

var fd = new FormData();

fd.append("fileToUpload", document.getElementById('fileToUpload').files[0]);

var xhr = new XMLHttpRequest();

xhr.upload.addEventListener("progress", uploadProgress, false);

xhr.addEventListener("load", uploadComplete, false);

xhr.addEventListener("error", uploadFailed, false);

xhr.addEventListener("abort", uploadCanceled, false);

xhr.open("POST", "Home/Upload");

xhr.send(fd);

}

function uploadProgress(evt) {

if (evt.lengthComputable) {

var percentComplete = Math.round(evt.loaded * 100 / evt.total);

document.getElementById('progressNumber').innerHTML = percentComplete.toString() + '%';

}

else {

document.getElementById('progressNumber').innerHTML = 'unable to compute';

}

}

function uploadComplete(evt) {

alert(evt.target.responseText);

}

function uploadFailed(evt) {

alert("There was an error attempting to upload the file.");

}

function uploadCanceled(evt) {

alert("The upload has been canceled by the user or the browser dropped the connection.");

}

上面是就原生的Javascript,在onchange事件执行fileSelected的function,在点击button执行了uploadFile的function,这里使用XMLHttpRequest实现ajax上传文件。 注意代码在Firefox 14 可以工作,IE 9目前不支持file api,可以参加这里。 服务端的代码很简单:

public class HomeController : Controller

{

public ActionResult Index()

{

return View();

}

/// <summary>

/// Uploads the specified files.

/// </summary>

/// <param name="fileToUpload">The files.</param>

/// <returns>ActionResult</returns>

[HttpPost]

public ActionResult Upload(HttpPostedFileBase[] fileToUpload)

{

foreach (HttpPostedFileBase file in fileToUpload)

{

string path = System.IO.Path.Combine(Server.MapPath("~/App_Data"), System.IO.Path.GetFileName(file.FileName));

file.SaveAs(path);

}

ViewBag.Message = "File(s) uploaded successfully";

return RedirectToAction("Index");

}

}

以上是“HTML5如何实现上传文件显示进度”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网node.js频道!

--结束END--

本文标题: HTML5如何实现上传文件显示进度

本文链接: https://www.lsjlt.com/news/91726.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • HTML5如何实现上传文件显示进度
    这篇文章主要为大家展示了“HTML5如何实现上传文件显示进度”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HTML5如何实现上传文件显示进度”这篇文章吧。 这...
    99+
    2022-10-19
  • HTML5中Ajax如何实现文件上传并显示进度条
    这篇文章主要介绍HTML5中Ajax如何实现文件上传并显示进度条,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下效果图:html5上传是同步上传的方式,所以能够实现进度条的显示。1.上传文件:首先我们用aj...
    99+
    2023-06-08
  • HTML5实现上传文件显示进度的代码分享
    这篇文章主要介绍“HTML5实现上传文件显示进度的代码分享”,在日常操作中,相信很多人在HTML5实现上传文件显示进度的代码分享问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2022-10-19
  • 如何实现react显示文件上传进度demo
    这篇文章给大家分享的是有关如何实现react显示文件上传进度demo的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。在...
    99+
    2023-06-14
  • JS实现上传文件显示进度条
    本文实例为大家分享了JS实现上传文件显示进度条的具体代码,供大家参考,具体内容如下 用户反馈:图片上传过程中,如果网络比较慢,会发现上传图片后没有一点反应,体验性很差,图片回显也比较...
    99+
    2022-11-13
  • html如何显示文件上传进度
    这篇文章给大家分享的是有关html如何显示文件上传进度的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。显示文件上传进度更好的用户体验是让用户知道文件上传进度,前面我们用过了FileReader以及读取和加载文件的事...
    99+
    2023-06-27
  • react显示文件上传进度的示例
    目录react上传文件显示进度 demo 前端 快速安装react应用src-> App.js后台 使用express搭载web服务器app.jsAxios 是一个基于 pro...
    99+
    2022-11-12
  • Struts2实现文件上传时显示进度条功能
           最近在做一个资源共享的项目中,采用了Struts2.1.8+Spring2.5.6+hibernate3.32的框架整合方式进行开发。在文件上传这块,因为需要实现文件...
    99+
    2023-05-31
    struts2 上传 进度条
  • Java中怎么实现上传文件动态显示进度
    Java中怎么实现上传文件动态显示进度,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.单例:用于保存进度信息;2.上传ser...
    99+
    2022-10-19
  • JavaWeb项目实现文件上传动态显示进度实例
    很久没有更新博客了,这段时间实在的忙的不可开交,项目马上就要上线了,要修补的东西太多了。当我在学习JavaWeb文件上传的时候,我就一直有一个疑问,网站上那些博客的图片是怎么上传的,因为当提交了表单之后网页就跳转了。后来我学习到了Ajax,...
    99+
    2023-05-31
    java 上传 进度条
  • HTML5+Ajax文件上传进度条怎么实现
    这篇文章主要介绍了HTML5+Ajax文件上传进度条怎么实现,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。原本打算使用jquery插件进行异...
    99+
    2022-10-19
  • 使用struts2实现一个文件上传功能并显示进度条
    本篇文章为大家展示了使用struts2实现一个文件上传功能并显示进度条,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一. struts2读取进度原理分析 在strut2中控制文件上传信息的类是实现M...
    99+
    2023-05-31
    struts2 文件上传 进度条
  • vue+element-ui+axios多文件上传的实现并显示整体进度
    目录element-ui+axios多文件上传并显示进度解决element ui多文件上传的问题业务场景解决办法element-ui+axios多文件上传并显示进度 element-...
    99+
    2022-11-13
  • Android上传文件到服务端并显示进度条
    最近在做上传文件的服务,简单看了网上的教程。结合实践共享出代码。 由于网上的大多数没有服务端的代码,这可不行呀,没服务端怎么调试呢。 Ok,先上代码。 Android 上传比较...
    99+
    2022-06-06
    服务端 进度条 Android
  • vue+element-ui+axios多文件上传怎么实现并显示整体进度
    今天小编给大家分享一下vue+element-ui+axios多文件上传怎么实现并显示整体进度的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一...
    99+
    2023-06-29
  • Ajax如何实现上传文件进度条Codular
    这篇文章主要介绍了Ajax如何实现上传文件进度条Codular,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Let's Code我们...
    99+
    2022-10-19
  • vue如何实现实时上传文件进度条
    这篇文章主要介绍了vue如何实现实时上传文件进度条,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下//上传文件组件<el-upload  ...
    99+
    2023-06-29
  • 基于HTML5 Ajax文件上传进度条的实现方法
    这篇文章主要介绍“基于HTML5 Ajax文件上传进度条的实现方法”,在日常操作中,相信很多人在基于HTML5 Ajax文件上传进度条的实现方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,...
    99+
    2022-10-19
  • 如何使用Html5实现异步上传文件,支持跨域,带有上传进度条
    这篇文章主要为大家展示了“如何使用Html5实现异步上传文件,支持跨域,带有上传进度条”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用Html5实现异步上...
    99+
    2022-10-19
  • vue实现实时上传文件进度条
    本文实例为大家分享了vue实时上传文件进度条,供大家参考,具体内容如下 //上传文件组件 <el-upload         action         :show-fi...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作