Ajax(Asynchronous JavaScript and XML)在JQuery中的应用

JQuery中的load()方法:
    在传统的JavaScript中,使用XMLHttpRequest对象异步加载数据,而在jQuery中使用load()方法就可以实现获取异步数据的功能。
    load(url, [data], [callback]);
    其中url为请求目标地址。
    可选参数[data]表示发送到服务器的数据,其格式为key/value。
    可选参数[callback]表示成功加载后,返回至加载页面的回调函数。
    例:$("#myDiv").load("b.html .classInB");    // 可以获取b.html中的.classInB中的内容

JQuery中的全局函数getJSON():
    $.getJSON(url, [data], [callback]);
    参数url表示请求地址,一般以后缀名.json格式。
    可选参数[data]表示发送到服务器的数据,其格式为key/value。
    可选参数[claaback]表示加载成功时执行的回调函数。

JQuery中的全局函数getScript():
    使用此方法是从服务其获取.js文件,
    $.getScript(url, [callback]);
    
Jquery中异步加载XML文档:
    $.get(url, [data], [callback], [type]);
    可选参数[type]表示返回数据的格式,如HTML、XML、JS、JSON、TEXT等。

请求服务器数据:
    $.get(url, [data], [callback]);
    例:
        $.get("Login.jsp", 
            {name: encodeURI($("#name").val()), password: encodeURI($("#password").val())},
            function(data) {
                if(data == "OK"){
                    alert("成功登陆");
                    ...
                } else {alert("登陆失败");}
            }
        );
    其可选参数[data]的格式是{key0:value0, key1:value1, ...}。在客户端接收时使用decodeURI()进行解码。

    $.post(url, [data], [callback], [type]);
    
    serialize()序列化表单:当使用get(),post()想服务器传递的参数过多时,该方法可以简化参数传值的方式,将所选的DOM元素准换成能随Ajax传递的字符串。
    例: $.post("Login,jsp", $("#loginForm").serialize(), function(data){...});

$.ajax()方法:
    功能强悍的最底层的异步请求方法。
    $.ajax([options]);
    其中可选参数[options]为该方法中的请求设置,其格式为key/value,既包含发送请求的参数,也含有服务器响应后回调的函数。
    $.ajax()参数列表:
参数名
类型
功能描述
url
String
发送请求的地址(默认为当前地址)
type
String
数据请求方式(post、get),默认get
data
String或Object
发送到服务器的数据。如果不是字符串则自动转换成字符串格式,如果是get请求,则该字符串将附在url后面
dataType
String
服务器返回的数据类型,如果没有指定,JQuery将自动根据Http包MIME信息自动判断,服务器返回的数据根据自动判断的结果进行解析,传递给回调函数,其可用类型为:
  html: 返回纯文本的HTML信息,包含的script标记会在插入页面时被执行
  script:返回纯文本的JavaScript代码
  text:   返回纯文本字符串
  xml:   返回可被JQuery处理的XML文档
  json:  返回JSON格式的数据
beforeSend
function
该函数用于发送请求前修改XMLHttpRequest对象,其中的参数就是XMLHttpRequest对象,由于该函数本身是JQuery事件,因此,如果函数返回false,则表示取消本次事件
complete
function
请求完成后调用的回调函数,改函数无论数据发送成功或失败都会调用,其中有两个参数,一个是XMLHttpRequest对象,另一个是strStatus,用于描述成功请求类型的字符串
success
function
请求成功后会调用的回调函数,该函数有两个参数,一个是根据dataType处理后服务器返回的数据,另一个是strStatus,用于描述状态的字符串
error
function
请求失败后调用的回调函数,该函数有三个参数,一个是XMLHttpRequest对象,第二个是strError,第三个是捕捉到的错误对象strObject
timeout
number
请求超时的时间(毫秒),该设置将覆盖$.ajaxSetup()方法中同样的设置
global
boolean
是否响应全局事件,默认是true,表示响应,如果设置成false,表示不响应,那么全局事件$ajaxStart等将不响应
async
boolean
是否为异步请求,默认是true,如果设置为false,则表示该请求为同步请求
cache
boolean
是否进行页面缓存,true表示进行缓存,false表示不进行缓存

$.ajaxSetup()设置全局Ajax
    在使用$.ajax()方法时,有时要调用多个$.ajax()方法,使用该方法设置全局性的Ajax请求默认选项,一次设置,全局有效。
    $.ajaxSetup([options]);
    可选参数[options]是一个对象,例:$.ajaxSetup({type:"GET", url:"FindJobs.jsp", dataType:"xml"});

Ajax全局事件
    Ajax全局事件及其参数及功能:
事件名称
参数
功能描述
ajaxComplete(callback)
function
Ajax请求完成时执行的函数
ajaxError(callback)
function
Ajax请求发生错误时执行的函数,其中捕捉到的错误可以作为最后一个参数进行传递
ajaxSend(callback)
function
Ajax请求发送前执行的函数
ajaxStart(callback)
function
Ajax请求开始时执行的函数
ajaxStop(callback)
function
Ajax请求结束时执行的函数
ajaxSuccess(callback)
function
Ajax请求成功时执行的函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值