jquery的ajax是对原始的ajax进行的封装,方便用户的使用。下面用代码分别举例各自的使用方式。

  • jquery的ajax发送和接收xml数据格式。

        $.ajax({
    type: "PUT",
    beforeSend: function(xhr) {
    alert("xhr=" + xhr);
    m_szUserPwdValue = "YWRtaW46MTIzNDU=";
    xhr.setRequestHeader("If-Modified-Since", "0");
    xhr.setRequestHeader("Authorization", "Basic " + m_szUserPwdValue);
    },
    url:"./videoPathLoad", //请求路径
    processData: false,
    data: xmlDoc,
    success: function(xmlDoc, textStatus, xhr) {
    alert("xml = " + xml);
    SetPTZCallback(xhr);
    },
    error:function(xhr, textStatus) {
    alert("error");
    }
    });
  • jquery的ajax发送和接收json数据格式。
        $.ajax({
    type:"POST", //请求方式
    url:"./videoPathLoad", //请求路径
    cache: false,
    data:{//传参
    "operateType":"query",
    "deviceID":m_sDeviceID,
    "pathID":$("#selectPatrol").val()
    },
    dataType: 'json', //返回值类型
    success:function(json){
    $("#PatrolPresetList").empty();
    if(json != null){
    if(json.PresetID_1 != 0){InsertPresetList(1, json.PresetID_1, json.PatrolTime_1, json.PatrolSpeed_1)}
    }
    }
    });
  • 原始的ajax发送数据。
    //定义用于存储XMLHttpRequest对象的变量
    var xmlHttp = null; //创建XMLHttpRequest对象
    function creatXMLHTTP()
    {
    //判断浏览器是否支持ActiveX控件
    if(window.ActiveXObject)
    {
    //将所有可能出现的ActiveXObject版本都放在一个数组中
    var arrXmlHttpTypes = ['Microsoft.XMLHTTP','MSXML2.XMLHTTP.6.0',,'MSXML2.XMLHTTP.5.0','MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP'];
    //通过循环创建XMLHttpRequest对象
    for(var i=0;i<arrXmlHttpTypes.length;i++)
    {
    try
    {
    //创建XMLHttpRequest对象
    xmlHttp = new ActiveXObject(arrXmlHttpTypes[i]);
    //如果创建XMLHttpRequest对象成功,则跳出循环
    break;
    }
    catch(ex)
    {
    }
    }
    }
    //判断浏览器是否将XMLHttpRequest作为本地对象实现
    else if(window.XMLHttpRequest)
    {
    xmlHttp = new XMLHttpRequest();
    }
    } //响应XMLHttpRequest对象状态变化的函数
    function httpStateChange()
    {
    alert("xmlHttp.readyState=" + xmlHttp.readyState);
    if (xmlHttp.readyState==4)
    {
    if (xmlHttp.status==200 || xmlHttp.status==0)
    {
    switch (variable) {
    case 0:
    var node = document.getElementById("xlContainer");
    node.innerHTML = xmlHttp.responseText;
    break;
    case 1:
    alertWin(" 线路信息:", xmlHttp.responseText, 400, 330);
    break;
    } }
    }
    } //发送http请求
    function sendHttpReq(url)
    {
    //创建XMLHttpRequest对象
    creatXMLHTTP(); if (xmlHttp!=null)
    {
    //创建响应XMLHttpRequest对象状态变化的函数
    xmlHttp.onreadystatechange = httpStateChange;
    //创建HTTP请求
    xmlHttp.open("post",url,false,"admin","12345"); //发送HTTP请求
    xmlHttp.send(null);
    }
    else
    {
    alert("您的浏览器不支持XMLHTTP,请更换浏览器后再进行注册。");
    }
    } /*************************************************
    Function: SavePatrol
    Description: 发送http请求
    Input: 无
    Output: 无
    return: 无
    *************************************************/
    function SavePatrol() { var url = "./videoPathLoad";
    sendHttpReq(url); }
04-18 03:26