jQuery之异步Ajax请求使用
$.ajax({type:'',data:'',async:''...})
参数:
1.cache: true缓存页面 false 不缓存页面
(默认: true,dataType为script和jsonp时默认为false)
1.type: GET /POST
请求方式 ("POST" 或 "GET"), 默认为 "GET"。注意:其它 HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持。
2.async: true/false
默认为true 异步请求
false 同步请求 注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
3.data 发送到服务器的数据。将自动转换为请求字符串格式
要求为Object或String类型的参数 对象必须为key/value格式,例如{foo1:"bar1",foo2:"bar2"}转换为&foo1=bar1&foo2=bar2。
single=Single&multiple=Multiple&multiple=Multiple3&check=check2&radio=radio1
4.dataType: "JSON",
预期服务器返回的数据类型
@1. "json": 返回 JSON 数据
@2."jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
5. jsonp
在一个jsonp请求中重写回调函数的名字。这个值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,比如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。
6. jsonpCallback
默认为jQuery自动生成的随机函数名
为jsonp请求指定一个回调函数名。这个值将用来取代jQuery自动生成的随机函数名。这主要用来让jQuery生成独特的函数名,这样管理请求更容易,也能方便地提供回调函数和错误处理。你也可以在想让浏览器缓存GET请求的时候,指定这个回调函数名。
7.success:( data, textStatus, jqXHR)
请求成功后的回调函数。参数:由服务器返回,并根据dataType参数进行处理后的数据;描述状态的字符串。还有 jqXHR(在jQuery 1.4.x的中,XMLHttpRequest) 对象 。在jQuery 1.5, 成功设置可以接受一个函数数组。每个函数将被依次调用。
8.$("form").serialize()
序列 所有表单内容为字符串 把所有表单的值序列为以下字符串
single=Single&multiple=Multiple&multiple=Multiple3&check=check2&radio=radio1
o = $('form').serialize();
$.ajax({
type: "POST",
data : o, data: "name=John&location=Boston", o&name=jack&age=25
dataType: "JSON",
async: false,
url: "coupon_channel.php?act=update",
success: function(data) {
if (data.status == 'ok') {
window.location.href = data.link;
} else {
alert(data.text);
}
}
});