时间: 2011-12-31 / 分类: WEB后端编程 - 开发与实践 / 浏览次数: / 0 个评论 发表评论
当循环多次用同一个ajax方法发送请求时…
CSS Hack浏览器兼容IE6+IE7+IE8+IE9+FF
项目前端开发的架构
WEB前端开发中的一些编程风格和书...
12条经典摄影技巧

当循环多次用同一个ajax方法发送请求时,第一个没有返回的时候就又执行第二个,这样执行下去,会有明显的错误,会出错的。
解决:可以尝试用异步改成同步,或者用递归函数,循环调用自身也可以尝试。

在jQuery调用中,用$.ajax()代替$.get, $.post,可以添加async为false。
返回值:XMLHttpRequestjQuery.ajax([options])
通过 HTTP 请求加载远程数据。

async (Boolean)

(默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
示例:
描述:加载并执行一个 JS 文件。jQuery 代码:
$.ajax({
type: “GET”,
url: “test.js”,
dataType: “script”
});

描述:保存数据到服务器,成功时显示信息。jQuery 代码:
$.ajax({
type: “POST”,
url: “some.php”,
data: “name=John&location=Boston”,
success: function(msg){
alert( “Data Saved: ” + msg );
}
});
描述:装入一个 HTML 网页最新版本。jQuery 代码:
$.ajax({
url: “test.html”,
cache: false,
success: function(html){
$(“#results”).append(html);
}
});
描述:同步加载数据。发送请求时锁住浏览器。需要锁定用户交互操作时使用同步方式。jQuery 代码:
var html = $.ajax({
url: “some.php”,
async: false
}).responseText;
描述:发送 XML 数据至服务器。设置 processData 选项为 false,防止自动转换数据格式。jQuery 代码:
var xmlDocument = [create xml document];
$.ajax({
url: “page.php”,
processData: false,
data: xmlDocument,
success: handleResponse
});
备查 @ 2011-12-30 22:05

      站点地图 | 关于我 | 返回顶部
    Copyright © 2001-2013 { amiku.cn | zhangshunjin.com }. Powered by 

    阿米酷

    张顺金


    浙ICP备11002820号-1