Ajax

ajax

概念:Asynchronous Javascript And Xml 异步javascript和xml(数据)

作用:不用刷新页面就可以修改页面内容

特点: 1、异步请求数据 2、dom编程(局部修改数据)

ajax入门

//1、创建对象XMLHttpRequest
var xmlhttp=new XMLHttpRequest();
//2、请求
xmlhttp.open("请求方式","请求地址",true);
xmlhttp.send();
//3、处理、回调
xmlhttp.onreadystatechange=function(){
    if (xmlhttp.readyState==4 && xmlhttp.status==200){//判断状态
        //处理数据
        document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
}

ajax请求与发送数据

Ajax_第1张图片
1.png

ajax工具类封装

  • type:请求类型
  • url:请求地址
  • data:发送数据
  • dataType:返回的数据类型
  • success:成功时执行的方法
//创建工具类
    function ajax(option){
        //创建对象
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.open(option.type, option.url, true);
        //不同的请求方式,执行不同的方法
        if(option.type=="get"){
            xmlhttp.send();
        }else if(option.type=="post"){
            xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            xmlhttp.send(option.data);
        }       
        xmlhttp.onreadystatechange = function() {
            //成功
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                //不同的数据类型,执行不同的方法
                if(option.dataType=="text"){
                    option.success(xmlhttp.responseText);
                }else if(option.dataType=="script"){
                    option.success(xmlhttp.responseText);
                }else if(option.dataType=="json"){
                    var json=eval("("+xmlhttp.responseText+")");
                    option.success(json);
                }else if(option.dataType=="xml"){
                    option.success(xmlhttp.responseXML);
                }
            }
        }
    }

    //使用工具类
    ajax({
        type:"get",
        url:"/ajax/ajax?op=json3",
        dataType:"json",
        success:function(data){
            for(i in data){//i就是下标
                content.innerHTML=content.innerHTML+data[i].username+","+data[i].password+"
"; } } });

你可能感兴趣的:(Ajax)