jq中的ajax

时间:2024-09-02 17:07:02

jq对ajax进行了封装,在jq中$.ajax()方法是最底层的方法,第二层是load() , get() , post()方法,第三层是$.getScript()和$.getJSON().基本第二种方法用到多

1.load()方法

load()方法是ajax中最为简单跟常用的ajax方法,能载入远程的HTML代码并插入到DOM中。它的结构是

load(url[,data][,callback]);

参数解释:url:请求HTML页面的URL地址

    data:发送至服务器的key/value数据

    callback:请求完成时的回调函数,无论请求成功或失败

1.load()方法的url的语法结构是“url   selector”;

url和selector中间有空格,

例:$('#obj').load('text.html   .css');

2.传递方式

load()的传递方式根据参数data来自动指定,如果没有参数传递,则用get方式传递,反之则会自动转换到post

例://无参数传递,则用get

$('#obj').load('text.php',function(){

})

//有参数时,用post

$('#obj').load('text.php',{name:"rain"},function(){

})

3.回调参数

对于必须在加载完成之后才能继续的操作,load()方法提供了回调函数(callback);该函数有三个参数,分别代表请求返回的内容,请求状态,XMLHttpRequest对象

例:

$('#obj').load('text.html',function(responseText,textStatus,XMLHttpRequest){

  //responseText:请求返回的内容

  //textStatus:请求状态 success error notmodified  timeout4种

  //XMLHttpRequest:XMLHttpRequest对象

})

在load()中,无论Ajax请求是否成功,只有当请求完成(complete)后,回调函数就被触发

load()方法通常用来从web服务器上获取静态的数据文件,然而这并不能体现ajax的全部价值。在项目中,如果要传递一些参数给服务器中的页面,那么可以使用$.get()和$.post()或者$.ajax()方法

2.$.get()方法

$.get()方法使用GET方式来进行异步请求

语法结构:$.get(url[,data][,callback][,type]);

参数解释:

  url:请求的HTML页的URL地址

  data:发送至服务器的key/value数据会作为jquerystring附加到URL中

  callback:载入成功时的回调函数(只有当response的返回状态是success才调用该方法)自动将请求结果和状态传递给该方法

  type:服务器端返回内容的格式,包括xml,html,script,json,text,-default;

$.get()的回调函数只有两个参数

function(data,textStatus){

  //data:返回的内容可以是XML文档  JSON文件HTML片段

  //textStatus:请求状态:sucess error  notmodified ,timeout等

}