AJAX JSON

AJAX:

实现方式:

1. 原生的JS实现方式(了解)

//1.创建核心对象

            var xmlhttp;

            if (window.XMLHttpRequest)

            {// code for IE7+, Firefox, Chrome, Opera, Safari

                xmlhttp=new XMLHttpRequest();

            }

            else

            {// code for IE6, IE5

                xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

            }

            //2. 建立连接

            /*

                参数:

                    1. 请求方式:GET、POST

                        * get方式,请求参数在URL后边拼接。send方法为空参

                        * post方式,请求参数在send方法中定义

                    2. 请求的URL:

                    3. 同步或异步请求:true(异步)或 false(同步)

            */

            xmlhttp.open("GET","ajaxServlet?username=tom",true);

            //3.发送请求

            xmlhttp.send();

            //4.接受并处理来自服务器的响应结果

            //获取方式 :xmlhttp.responseText

            //什么时候获取?当服务器响应成功后再获取

            //当xmlhttp对象的就绪状态改变时,触发事件onreadystatechange。

            xmlhttp.onreadystatechange=function()

            {

                //判断readyState就绪状态是否为4,判断status响应状态码是否为200      403没有访问权限

                if (xmlhttp.readyState==4 && xmlhttp.status==200)

                {

                  //获取服务器的响应结果

                    var responseText = xmlhttp.responseText;

                    alert(responseText);



JQeury实现方式

1. $.ajax()

* 语法:$.ajax({键值对});

//使用$.ajax()发送异步请求

            $.ajax({

                url:"ajaxServlet1111" ,          // 请求路径

                type:"POST" ,                      //请求方式

                //data: "username=jack&age=23",        //请求参数

                data:{"username":"jack","age":23},

                success:function (data) {

                    alert(data);

                },                            //响应成功后的回调函数

                error:function () {

                    alert("出错啦...")

                },                          //表示如果请求响应出现错误,会执行的回调函数

                dataType:"text"              //设置接受到的响应数据的格式

            });


2. $.get():发送get请求

* 语法:$.get(url, [data], [callback], [type])

* 参数:

* url:请求路径

* data:请求参数

* callback:回调函数

* type:响应结果的类型


3. $.post():发送post请求

* 语法:$.post(url, [data], [callback], [type])

* 参数:

* url:请求路径

* data:请求参数

* callback:回调函数

* type:响应结果的类型

4.&.get json()

                        * url:请求路径

                        * data:请求参数

                        * callback:回调函数

                        * 默认json类型


Ajax :六个全局事件

加载请求: .ajaxStart() 和 .ajaxstop()

错误处理: .ajaxError()

.ajaxSuccess(),对应一个局部方法:.success(),请求成功完成时执行。

.ajaxComplete(),对应一个局部方法:.complete(),请求完成后注册一个回调函数。

.ajaxSend(),没有对应的局部方法,只有属性 beforeSend,请求发送之前要绑定的函数。

备注:https://www.cnblogs.com/by-dxm/p/6393288.html


JSON对象:

1. json对象.键名

2. json对象["键名"]

3. 数组对象[索引]

4. 遍历

//1.定义基本格式

        var person = {"name": "张三", age: 23, 'gender': true};

        var ps = [{"name": "张三", "age": 23, "gender": true},

            {"name": "李四", "age": 24, "gender": true},

            {"name": "王五", "age": 25, "gender": false}];

        //获取person对象中所有的键和值

        //for in 循环

      /* for(var key in person){

            //这样的方式获取不行。因为相当于  person."name"

            //alert(key + ":" + person.key);

            alert(key+":"+person[key]);

        }*/

      //获取ps中的所有值

        for (var i = 0; i < ps.length; i++) {

            var p = ps[i];

            for(var key in p){

                alert(key+":"+p[key]);

            }

        }


AJAX JSON_第1张图片
AJAX JSON_第2张图片

你可能感兴趣的:(AJAX JSON)