AJAX的使用

引入jquery

$.ajax({
    url: "/base/data",  //请求的url
    type: "GET",   //请求方式
    dataType: "json",   //返回格式为json
    contentType: 'application/json;charset=UTF-8', //发送给服务器的格式,默认application/x-www-form-urlencoded
    jsonp: "jsonpCallback",   //服务端用于接收callback调用的function名的参数
    async: true,    //请求是否异步,默认为异步,ajax重要特性
    cache : false,  //不会从浏览器缓存中加载请求信息
    timeout:5000,    //超时时间
    data: { "id": "value" },    //传递参数值
    headers: {
        Accept: "application/json; charset=utf-8"
    },
    beforeSend:function(XMLHttpRequest){
        //请求前的处理
    },
    success:function(data, textStatus){
        //请求成功时...
    },
    error:function(XMLHttpRequest, textStatus, errorThrown){
        //请求出错...
    },
    complete: function(XMLHttpRequest, textStatus) {
        //请求完成,成功失败均调用...
    }
});

demo

$.ajax({
    type: 'post',
    url: 'demo.php',
    data: {name: txt1, email: txt2},
    dataType: 'json',
    success: function (data) {
        if (data.status == 0) {
            alert(data.msg);
        } else {
            alert(data.msg);
        }
    },
    error: function () {
        alert("error");
    }
});

参数描述

url

  • 类型:String
  • 默认为当前地址发送请求的页面。

type

  • 类型:String
  • 请求方式:(post或get)默认为get。
  • 其它 HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持。

timeout

  • 类型:Number
  • 设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。

async

  • 类型:Boolean
  • 默认设置为true,所有请求均为异步请求。如果需要同步请求,请将此选项设置为false。

cache

  • 类型:Boolean
  • 默认为true(当dataType为Script时,默认为false),设置false将不会从浏览器缓存中加载请求信息。

data

  • 类型:Object / String
  • 发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。
  • 查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。
  • 如果为数组,jQuery 将自动为不同值对应同一个名称。 如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。

dataType

  • 类型:String
  • 预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包的mine信息返回responseXML或responseText,并作为回调函数参数传递。
  • 数据类型如下:
  1. xml:返回XML文档,可用jQuery处理。
  2. html:返回纯文本HTML信息;包含的script标签会在插入DOM时执行。
  3. script:返回纯文本javascript代码。不会自动缓存结果,除非设置了cache参数。注意在远程请求时(不在同一个域下),所有post请求都将转为get请求。
  4. json:返回JSON数据。
  5. jsonp:JSON格式。使用JSONP形式调用函数时,例如myurl?callback=?,JQuery将自动替换后一个“?”为正确的函数名,以执行回调函数。
  6. text:返回纯文本字符串。

success

  • 类型:Function
  • 请求成功后调用的回调函数,有两个参数。
    参数:
  1. data 由服务器返回,并根据dataType参数进行处理后的数据。
  2. textStatus 描述状态的字符串。

error

  • 类型:Function
  • 请求失败时被调用的函数。该函数有3个参数。
    参数:
  1. XMLHttpRequest对象
  2. 错误信息
  3. 捕获的错误对象(可选)

contentType

  • 类型:String
  • 当发送信息至服务器时。设置内容编码类型。
  • 默认为 "application/x-www-form-urlencoded" 该默认值适合大多数应用场合。

beforeSend

  • 类型:Function
  • 发送请求前可以修改XMLHttpRequest对象的函数。
  • 例如添加自定义HTTP头。在beforeSend中如果返回false可以取消本次ajax请求。XMLHttpRequest对象是唯一的参数。

complete

  • 类型:Function
  • 请求完成后调用的回调函数(请求成功或失败均调用)。
  • 参数:
  1. XMLHttpRequest对象
  2. 描述成功请求类型的字符串。

你可能感兴趣的:(AJAX的使用)