深入Jquery-$.ajax 、$.get、$.post、$.get 、JSON

最近在平台开发的时候,频繁的用到jquery的ajax方法,例如$.ajax(),$.post(),$.get(), 刚开始的是有有些晕,不都属于ajax么,怎么还出了这么多类,后来都罗列出来,进行了对比,感觉清晰了很多。

首先来看$.ajax([settings]),实例如下

 

$.ajax({
url: url,
data:{data:"data"},
type: type,
dataType:dataType,
success:CallBack,
error:function(er){
BackErr(er);}
});


说明:$.ajax()这个函数功能强大,包含所有ajax配置参数的设置,可以对ajax进行精确的控制:url为请求地址,data为发送到服务器的数据,type为请求的类型,datatype为服务器返回数据的类型,callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第二个参数为服务器的状态,是可选参数。

 

 

 

接下来看另外三个,它们其实是上面的精简版,可以说是对ajax配置参数部分值做了默认设置。

 

一,$.get(url,[data],[callback],[datatype])

实例如下

 

$.get(
  "industry?industryname=strName",{
  id:  '123',
  },function(data,state){
  //这里显示从服务器返回的数据
  alert(data);
  //这里显示返回的状态
  alert(state);
  }
)

 

说明:url为请求地址,data为请求数据的列表(是可选的,也可以将要传的参数写在url里面),callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第二个参数为服务器的状态,是可选参数。而其中,服务器返回数据的格式默认是字符串形势,并不是我们想要的json数据格式,在此引用只是为了对比说明。

该函数等价于

$.ajax({
  type: 'get'
  url: "industry?industryname=strName",
  data: {id:'123'},
  success: success,
  dataType: dataType

});

二,$.post(url,[data],[callback],[type]) 

实例如下

 

$.post(
  "industry",{
  id:  '123',
 industryname:strName
  },function(data,state){
  //这里显示从服务器返回的数据
  alert(data);
  //这里显示返回的状态
  alert(state);
  },
  "json"
)

 

说明:这个函数跟$.get()参数差不多,多了一个type参数,type为返回的数据类型,可以是html,xml,json等类型,如果我们设置这个参数为:json,那么返回的格式则是json格式的,如果没有设置,就和$.get()返回的格式一样,都是字符串的。

该函数等价于

 

$.ajax({
  type: 'POST',
  url: "industry",
  data: {id:'123', industryname:strName},
  success: success,
  dataType: dataType
});

三,$.getJSON(url,[data],[callback])
实例如下

 

 

 

$.getJSON("common.js",function(json){
  alert("JSON Data: " +json.users[3].name);
});

 

说明:$.getJSON(url,[data],[callback])函数没有type参数,返回的是json类型的,不需要转换。

该函数等价于

$.ajax({
  url: url,
  data: data,
  success: callback,
  dataType: json
});


总结:$.ajax([settings])是对ajax各个参数的设置做全面的控制,而其他三个则是$.ajax的精简版.

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值