AJAX详解笔记

概念:

        AJAX:异步的JavaScript和XML技术(XML已被JSON取代)

        jQuery就是一个JS的框架

        AJAX异步请求技术

        JSON是一种数据表示方式

jQuery框架:

        是一个封装JavaScript的框架技术,对JS中的一些常用的方法和行为进行了封装。所以本身是一个js文件

jQuery中的核心函数:jquery();

        在这个函数中,可以使用三种函数:

                1.选择器        2.HTML标签        3.函数(也就是jQuery中的新的语法格式)

        通常使用$符号来代替jquery:jquery() ----> $()

选择器:jQuery的选择器与css选择器完全一样(作用:帮助找到对象)

        $("#Id")表示在jQuery中找到对应的Id的标签对象

属性方法attr

        在jQuery中大量方法可以同时赋值与取值

        $().attr("href");                获取href属性的值

        $().attr("href","abc");       为href属性赋值

        重点:attr方法可以获取我们自己定义的属性

                <a id="first" href="www.baidu.com" stuId="33">baidu</a>

                $("#first").attr("stuId")      我们可以正常获取到"33"

事件:

        jQuery可以为页面元素添加事件绑定    

<input type="checkbox" id="myace" >

<input type="checkbox" class="ace">

<input type="checkbox" class="ace">

<input type="checkbox" class="ace">

<input type="checkbox" class="ace">

$("#myace").click(function(){

$(".ace").attr("checked",$(this).prop("checked"));

});

<html>

        <head>

                <meta charset="utf-8">

                <title></title>

                <script src="js/jquery-3.5.1.js"></script>

                <script>

                        $(function(){

                                $(".dela").click(function(){

                                        if(confirm("是否确认删除("+$(this).attr("goodsId")+")?")){

                                                location.href="?goodsId="+$(this).attr("goodsId");

                                        }

                                })

                        });

                </script>

        </head>

<body>

        <A class="dela" goodsId="1">删除</A><br>

        <A class="dela" goodsId="2">删除</A><br>

        <A class="dela" goodsId="3">删除</A><br>

        <A class="dela" goodsId="4">删除</A><br>

        <A class="dela" goodsId="5">删除</A><br>

        <A class="dela" goodsId="6">删除</A><br>

        </body>

</html>

 JSON:JavaScript对象表示法(JavaScript Object Notation)

        是在JavaScript中用来表示一个对象的表示方式

        在客户端与服务器之间进行数据传递

        语法格式:是一种 K-V 的键值对映射的表示方式;就只有两个内容:JSON对象和JAON数组

        JSON支持更多的数据类型,Value可以支持字符串,数值,对象,数组,ture,false,null

                JSON对象:var jsonobj = {key:value,key:value};

                JSON数组:var jsonArr = [{},{}];

比较Java,XML,JSON

        学员对象,有学号,姓名

        1.Java类         

                class Stu{

                        private Integer stuId;

                        private String stuName;

                }

                Stu s1 = new Stu(1,”张三”);

                Stu s2 = new Stu(2,”李四”);

                List<Stu> stuList = new ArrayList<>();

        2.XML   

                <stuList>

                        <stu stuId=1>

                        <stuName>张三</stuName>

                        </stu>

                        <stu stuId=2>

                                <stuName>李四</stuName>

                        </stu>

                </stuList>

        3.JSON

                [{"stuId":1,"stuName":"张三"},{"stuId":2,"stuName":"李四"}]

JS中使用JSON

        <script>

                var jsonobj =  {"stuId":1 ,"stuName":"张三"};

                alert(jsonobj.stuId);

                jsonobj.stuName = "张三";

                alert(jsonobj.stuName);

                var jsonArr = [jsonobj,{"stuId":2 ,"stuName":"李四"}] ;

                alert(jsonArr[1].stuName);

        </script>

JSON字符串:是一个符合JSON格式的字符串(因为请求/响应只能是文本

        将一个JSON字符串转换成JSON对象

                var jsonTxt = "{'stuId':1 ,'stuName':'张三'}" ;

                var jsonobj = eval('('+jsonTxt+')');

JSON的依赖

        jackson的注解

                1.针对日期类型的注解:

                        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")

                2.针对二向映射的注解:

                        @JsonIgnore

AJAX :   Asynchronous JavaScript And XML 。

               异步的JavaScript 和 XML(JavaScript是语言,XML是数据传输的协议)

        异步:A,B可以同时执行,相互不受影响(在线观看视频,可以发送弹幕)

        同步:A,B必须一前一后执行,之间相互影响

异步请求:

        AJAX的核心对象叫XHR:XmlHttpRequest

        异步就是在不影响当前浏览器页面的情况下,使用JavaScript的xhr对象向服务器发送请求;同样由JavaScript的xhr对象接收服务器的响应,xhr对象接收响应后,可以通过执行JavaScript脚本来影响HTML页面,以实现局部刷新,达到异步请求

执行流程:

        1.由HTML页面元素触发事件调用脚本

        2.由JS中的xhr对象向服务器发送异步请求

        3.服务器将响应发送给JS中的xhr对象

        4.由xhr对象调用JS的函数(回调函数)实现影响HTML页面元素

jQuery框架的ajax请求:jQuery框架中针对ajax请求进行了封装

        $.ajax({参数设置});

        参数设置:

                data:发送到服务端的数据                data:{"username":"zhangsan","age":25}

                dataType:相应的数据类型                dataType:xml  /  json

                success(data,textStatus,jqXHR)         表示成功时回调的函数

                type                表示请求的方式            get  /  post

                url                   表示请求的地址                                     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值