php文件上传进度条,jquery ajax xhr监听上传进度显示不准确,求解?

用户投稿 20 0

关于“php_ajax上传进度条”的问题,小编就整理了【2】个相关介绍“php_ajax上传进度条”的解答:

jquery ajax xhr监听上传进度显示不准确,求解?

如果你是用这种方式上传的话,确实没有好方法。

因为 XMLHttpRequest.onProgress 事件能拿到的是网络传输的字节而已;你说的问题里,“上传进度已完成”,实际是指浏览器已经把文件传输给了服务端;“很久才可以”,是你服务端额外处理的时间,这段时间对浏览器来说是不可感知的,它怎么会知道你服务端处理需要多久呢? 一般处理思路有这么几种:

1、上传进度设置一个最大值,比如 99%,只有当服务端真正返回结果时才会变到 100%,这种方法最为简单粗暴;

2、尽量减少服务端处理的时间,例如收到文件后交给异步队列去处理,立刻返回给客户端响应,这种方法需要额外做的事件比较多,开发难度更高一些;

3、客户端分片上传,把大文件变成若干段小“文件”,缺点是浏览器只有支持 HTML5 才支持 FormData 分片。

如何用ajax提交多组同样的数据(数组)到后台?

下载个jquery.js

用.ajax函数,参数类型为json,后台用json_decode解码就成了数组了

$("#btn2").click(function() {

$.ajax({

type: "POST",

contentType: "application/json",

url: "server.php",

data: "{name: "aaa", age: "20"}, {name: "bbb", age: "20"}, {name: "ccc", age: "20"}

",

dataType: 'json',

success: function(result) {

alert(result.d);

}

});

});

到此,以上就是小编对于“php_ajax上传进度条”的问题就介绍到这了,希望介绍关于“php_ajax上传进度条”的【2】点解答对大家有用。

抱歉,评论功能暂时关闭!