大佬教程收集整理的这篇文章主要介绍了jQuery AJAX上传大文本字段的进度,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的ajax请求:
$.ajax({ type: "POST",url: "index.PHP?action=saveNewPost",data: {text@L_772_8@1: text@L_772_8@1,text@L_772_8@2: text@L_772_8@2},contentType: "application/x-www-form-urlencoded;charset=UTF-8",success: function(){ // } });
我希望有一个类似“onProgress”的东西,其参数包含已发送的字节数量…
找到了解决方案
$.ajax({ xhr: function() { var req = $.ajaxSetTings.xhr(); if (req) { req.upload.addEventListener('progress',function(event) { if (event.lengthComputablE) { $('#ajaxFeedBACkDiv').html(event.loaded); // = 'test'; //event.loaded + ' / ' + event.@R_533_10586@l; } },falsE); } return req; },type: "POST",contentType: "application/x-www-form-urlencoded;charset=UTF-8" } });
这似乎有效,尽管还有
2个问题:
>我的localhost上的连接太快了,所以很难看到“进度”实际上正在工作.我在同一个网络中的第二台Mac上安装了这个工具http://mschrag.github.com,我发现它工作得很好.
>我不确定这是否会在非XHR / HTML5兼容的浏览器上回退,即只上传没有进度信息?
XMLHttpRequest
对象来实现此目的.它支持您可以订阅的进度事件,并获得AJAX操作的通知.
这是一个例子:
document.getElementById('myForm').onsubmit = function() { var xhr = new XMLhttprequest(); xhr.upload.addEventListener('progress',function(E) { if (e.lengthComputablE) { var percentage = Math.round((e.loaded * 100) / e.@R_533_10586@l); document.getElementById('progress').innerHTML = percentage + '%'; } },falsE); xhr.open(this.method,this.action,truE); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { alert(xhr.responseText); } }; xhr.send(new FormData(this)); return false; };
以上是大佬教程为你收集整理的jQuery AJAX上传大文本字段的进度全部内容,希望文章能够帮你解决jQuery AJAX上传大文本字段的进度所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。