jQuery ajax 标准写法及进度条绘制
$.ajax({ url: "http://www.microsoft.com", //请求的url地址 dataType: "json", //返回格式为json async: true, //请求是否异步,默认为异步,这也是ajax重要特性 data: { "id": "value" }, //参数值 type: "GET", //请求方式 processData: false, //对表单data数据是否进行序列化 contentType: false, //dataType设置你收到服务器数据的格式 xhr: function() { //ajax进度条 var xhr = $.ajaxSettings.xhr(); if (onprogress && xhr.upload) { xhr.upload.addEventListener("progress", progressBar, false); return xhr; } }, beforeSend: function() { //请求前的处理 }, success: function(req) { //请求成功时处理 }, complete: function() { //请求完成的处理 }, error: function() { //请求出错处理 } });
下面是ajax进度条执行的方法
/** * 侦查附件上传情况,这个方法大概0.05-0.1秒执行一次 */ function progressBar(evt) { var loaded = evt.loaded; //已经上传大小情况 var tot = evt.total; //附件总大小 var per = Math.floor(100 * loaded / tot); //已经上传的百分比 //这里可以绘制进度条 }