初学ajax

 ajax出现无疑改变了web应用:从开始的整体页面的刷新到局部页面的数据显示,不用刷新页面就可以与服务器交互;

 1 function ajaxPost(data){
 2 
 3 var xhr=new XMLHttpRequest();
 4 xhr.open("POST",url);
 5 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
 6 xhr.send(data)
 7 
 8 
 9 
10 
11 
12 }
View Code

这段是现在ajax技术应用post的发送数据;真正的响应服务器的数据是在异步调用函数是发生的

function response(callback){
     var xml=new XMLHttpRequest();/*获取XMLHttpRequest对象*/
     xml.open("get",url,true);/*这里的open打开的是交互地址;接受三个参数;(第一个参数是指定http方法或动作,第二个请求地址,第三个是否异步)*/ 
     xml.onreadystatechange=callback;/*异步调用需要监听readystatechange事件*/
     xml.send();/*发送主体这里为空*/
    




}
这里的两段代码其实都是差不多,只是发送和取得响应的区别;主要就是
要获取window.XMLHttpRequest对象;在Ie中他是一个ActiveX对象;可以模拟new XMLHttpRequest():
if(window.XMLHttpRequest=='undefined')
{
    window.XMLHttpRequest=function()
    {
        return new ActiveXObject('Microsoft.XMLHTTP');
    

    }  

}

上面的代码看起来有点混乱这边在梳理一下:
/*先说ajax post发送数据,然后获取响应*/
function postDate(data,callback)
{
    var xml=new XMLHttpRequest();
    xml.open("method",url);/*这里的method是两种http方法:get||post*/
    xml.setRequestHeader("Content-Type","text/plain,charset=utf-8")/*post请求要去设置请求头;指定请求主题的MIME类型*/
    xml.onreadystatechange=function()
    {
        xml.readyState==4&&callback(xml.responseText)
   
    
    }
    xml.send(data);



}
/*get发送数据就改变一下发送方法;数据信息包含在请求地址*/

 

posted @ 2017-04-27 23:14  caibird_bg  阅读(92)  评论(0编辑  收藏  举报