解读Jquery各类Ajax函数

一、函数解释

jQuery.get() :使用 HTTP GET 请求从服务器加载数据
jQuery.post():使用 HTTP POST 请求从服务器加载数据
jQuery.getJSON():使用 HTTP GET 请求从服务器加载 JSON 编码数据
jQuery.ajax():执行异步 HTTP (Ajax) 请求

二、解析

1-jQuery.get()

语法:$(selector).get(url,data,success(response,status,xhr),dataType)

参数参数说明
url必需。规定将请求发送的哪个 URL。
data可选。规定连同请求发送到服务器的数据。
success(response,status,xhr)可选。规定当请求成功时运行的函数。额外的参数:response - 包含来自请求的结果status - 包含请求的状态xhr - 包含 XMLHttpRequest 对象
dataType可选。规定预计的服务器响应的数据类型。默认地,jQuery 将智能判断。可能的类型:“xml”“html”“text”“script”“json”“jsonp”

简单的 GET 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。
例子:

$.get(
  "product?type=111",{
  id:  '123',
  name:  '青藤园',
  },function(data,state){
  //这里显示从服务器返回的数据
  alert(data);
  //这里显示返回的状态
  alert(state);
  }
)

该函数是简写的 Ajax 函数,等价于:

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

2-jQuery.post()
post() 方法通过 HTTP POST 请求从服务器载入数据

这个方法和$.get()用法差不多,唯独多了一个type参数,那么这里就只介绍type参数吧,其他的参考上面$.get()的。

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

语法:jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)

参数参数说明
url必需。规定把请求发送到哪个 URL。
data可选。映射或字符串值。规定连同请求发送到服务器的数据。
success(data, textStatus, jqXHR)可选。请求成功时执行的回调函数。
dataType可选。规定预期的服务器响应的数据类型。

默认执行智能判断(xml、json、script 或 html)。

该函数是简写的 Ajax 函数,等价于:

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});
$.post(
  "product?type=111",{
  id:  '123',
  name:  '青藤园',
  },function(data,state){
  //这里显示从服务器返回的数据
  alert(data);
  //这里显示返回的状态
  alert(state);
  },
  "json"
)

3-jQuery.getJSON()

使用 AJAX 请求来获得 JSON 数据,并输出结果

函数没有type参数,返回的是json类型的,不需要转换。

语法:jQuery.getJSON(url,data,success(data,status,xhr))

参数参数说明
url必需。规定将请求发送的哪个 URL。
data可选。规定连同请求发送到服务器的数据。
success(data,status,xhr)可选。规定当请求成功时运行的函数。额外的参数:response - 包含来自请求的结果数据status - 包含请求的状态xhr - 包含 XMLHttpRequest 对象

该函数是简写的 Ajax 函数,等价于:

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

发送到服务器的数据可作为查询字符串附加到 URL 之后。如果 data 参数的值是对象(映射),那么在附加到 URL 之前将转换为字符串,并进行 URL 编码。

传递给 callback 的返回数据,可以是 JavaScript 对象,或以 JSON 结构定义的数组,并使用 $.parseJSON() 方法进行解析。

从 test.js 载入 JSON 数据并显示 JSON 数据中一个 name 字段数据:

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

4- jQuery.ajax()

执行异步 HTTP (Ajax) 请求

该方法是 jQuery 底层 AJAX 实现。简单易用的高层实现见$.get, $.post 等$.ajax() 返回其创建的 XMLHttpRequest 对象。大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性。

最简单的情况下,$.ajax() 可以不带任何参数直接使用。

注意:所有的选项都可以通过 $.ajaxSetup() 函数来全局设置。

语法:jQuery.ajax([settings])

参数参数说明
settings可选。用于配置 Ajax 请求的键值对集合。可以通过 $.ajaxSetup() 设置任何选项的默认值。

通过 AJAX 加载一段文本:

//jQuery 代码:
$(document).ready(function(){
  $("#b01").click(function(){
  htmlobj=$.ajax({url:"/jquery/test1.txt",async:false});
  $("#myDiv").html(htmlobj.responseText);
  });
});
//HTML 代码:
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button id="b01" type="button">Change Content</button>

5-load();

jQuery load() 方法是简单但强大的 AJAX 方法。load() 方法从服务器加载数据,并把返回的数据放入被选元素中。
  
语法:$(selector).load(URL,data,callback);

参数参数说明
URL必需。规定将请求发送的哪个 URL。
data可选。data 参数规定与请求一同发送的查询字符串键/值对集合。
callback可选。 callback 参数是 load() 方法完成后所执行的函数名称。可选的 callback 参数规定当 load() 方法完成后所要允许的回调函数。回调函数可以设置不同的参数:responseTxt - 包含调用成功时的结果内容statusTXT - 包含调用的状态xhr - 包含 XMLHttpRequest 对象

三、区别

GET - 从指定的资源请求数据,发送至服务器的key/value数据会作为QueryString附加到请求URL中,服务器返回数据的格式其实是字符串形式,并不是我们想要的json数据格式

POST - 向指定的资源提交要处理的数据,这个函数跟$.get()参数差不多,多了一个type参数,type为返回的数据类型,可以是html,xml,json等类型,如果我们设置这个参数为:json,那么返回的格式则是json格式的,如果没有设置,就 和$.get()返回的格式一样,都是字符串的

getJSON-使用 AJAX 请求来获得 JSON 数据,使用JSON相比传统的通过 GET、POST直接发送“裸体”数据,在结构上更为合理,也更为安全。至于jQuery的getJSON()函数,只是设置了JSON参数的 ajax()函数的一个简化版本。这个函数也是可以跨域使用的,相比get()、post()有一定优势。另外这个函数可以通过把请求url写 成"myurl?callback=X"这种格式,让程序执行回调函数X。

ajax()-$.ajax() 返回其创建的 XMLHttpRequest 对象

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: jQuery中的ajaxsuccess函数是在请求成功后执行的回调函数。它接收一个参数,即服务器返回的数据。在这个函数中,可以对返回的数据进行处理,例如将数据显示在页面上,或者将数据存储在本地。如果请求失败,则不会执行success函数,而是执行error函数。 ### 回答2: jquery是一种非常流行的JavaScript库,其中最为重要的功能之一就是ajax,通过ajax可以在不刷新页面的情况下完成对服务器的数据请求和传输。在使用ajax时,我们通常会用到success函数,在ajax请求成功时执行。 具体来说,success函数是在ajax请求成功并且服务器返回正确响应时执行的,它的最基本语法如下: ``` $.ajax({ type: "GET", url: "url", data: {param1: value1, param2: value2}, success: function(data){ //处理返回的数据 } }); ``` 其中,type表示请求类型,可以是GET或POST;url表示请求的地址;data表示请求的参数,可以是键值对形式;success表示请求成功后执行的函数,其中参数data表示服务器返回的数据。 在success函数中可以处理服务器返回的数据,例如可以将数据渲染到页面上,或者进行其他逻辑处理。success函数可以接受多个参数,一般情况下我们只需要用到第一个参数data,表示服务器返回的数据。 除了success函数,还有一些其他的回调函数,例如error函数表示请求出错时执行的函数,complete函数表示请求完成后执行的函数。这些回调函数都是可选的,根据实际需求使用即可。 总之,jqueryajaxsuccess函数是非常重要的一个函数,它可以让我们在不刷新页面的情况下获取并处理服务器返回的数据,从而实现更加流畅和快捷的用户体验。 ### 回答3: jQuery中的AJAX(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下,通过异步加载数据的技术。而AJAXsuccess函数则是在AJAX请求成功后执行的回调函数success函数通常被用来处理AJAX请求的响应结果,将响应数据展示在页面上,或者执行一些其他的逻辑操作。 下面我们举一个简单的例子说明该函数的使用方法: ``` $.ajax({ type: "GET", url: "http://example.com/api/data", success: function(data) { // 处理响应数据 console.log(data); } }); ``` 在这个例子中,我们使用了jQuery的$.ajax函数来发送一个GET请求,请求的URL是http://example.com/api/data。如果请求成功,服务器会返回一些数据。这些数据会在AJAXsuccess函数中被作为参数传递给回调函数,我们可以在这个函数中进行相应的处理。 例如,我们可以通过jQuery将返回的数据展示到页面上: ``` $.ajax({ type: "GET", url: "http://example.com/api/data", success: function(data) { // 将响应数据展示在页面上 $('body').append('<ul>'); $.each(data, function(index, item) { $('body ul').append('<li>' + item.name + '</li>'); }); $('body').append('</ul>'); } }); ``` 在这个例子中,我们使用了$.each函数遍历返回的数据,然后将它们添加到一个列表中并展示在页面上。 我们还可以在success函数中执行其他类型的操作,例如更新页面中的CSS样式或者执行其他的JavaScript代码。需要注意的是,success函数只会在AJAX请求成功后被执行,而当AJAX请求失败时,则会执行相应的error函数。为了更好地处理错误情况,通常还会在AJAX请求中设置一些其他的配置参数来处理异常情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值