html5文件上传实现进度条需要后端吗

html5文件上传实现进度条需要后端吗,第1张

不需要后端的,前端自己判断,代码如下:

function uploadFile(){

// 获取上传文件,放到 formData对象里面

var pic = $("#myhead").get(0).files[0]

var formData = new FormData()

formData.append("file" , pic)

$.ajax({

type: "POST",

url: "upload",

data: formData ,//这里上传的数据使用了formData 对象

processData : false,

//必须false才会自动加上正确的Content-Type

contentType : false ,

//这里我们先拿到jQuery产生的 XMLHttpRequest对象,为其增加 progress 事件绑定,然后再返回交给ajax使用

xhr: function(){

var xhr = $.ajaxSettings.xhr()

if(onprogress &&xhr.upload) {

xhr.upload.addEventListener("progress" , onprogress, false)

return xhr

}

}

})

1、引入bootstrap.css和jquery.js

2、点击按钮后获取文件列表,添加到FormData,调用open函数指定类型与URL地址,在发起请求send();

3、监听onreadystatechange事件,当服务器回应后,把传回来的数据转换成JSON字符串,修改img的URL地址,让图片文件显示在页面中;

4、创建xhr对象开启监听文件上传进度,e.lengthComputable是true则计算进度条百分比,把结果给进度条;

5、进度条完成后,修改颜色,移除类添加类

HTML

JS


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11965624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存