zoukankan      html  css  js  c++  java
  • JQuery中的AJAX

     * jQuery中的Ajax

       * 封装第一层 - 类似于原生Ajax的用法

         * $.ajax() - 最复杂

           * 选项

             * url - 请求地址

            * type - 请求类型,默认为GET

            * async - 是否异步,默认为true

            * data - 请求数据,格式为key:value

            * dataType - 响应数据格式

              * HTML格式

              * XML格式

              * JSON格式

            * success - 请求成功后的回调函数

              function(data,textStatus){}

              * data - 响应数据内容

              * textStatus - success,请求状态

            * error - 请求失败后的回调函数

              function(XMLHttpRequest,textStatus,errorThrown){}

              * XMLHttpRequest - Ajax的核心对象

              * textStatus - 请求状态

                * error、timeout及notmodified等

              * errorThrown - 错误异常信息

       * 封装第二层 - 基于第一层再次封装

         * $().load(url,data,callback) - 最简单、局限性最大

           * 参数

             * url - 设置当前Ajax的请求地址

            * data - 设置当前Ajax的请求数据

              * 格式要求为key:value,构建Object即可

            * callback - Ajax请求成功后的回调函数

              * 该回调函数的形参(data),表示服务器端响应的数据内容

           * 问题

             * 请求类型由是否发送请求数据决定

              * 没有发送请求数据时,请求类型为GET

              * 如果发送请求数据时,请求类型为POST

            * 默认接收服务器端的数据内容

              * 是以字符串类型(HTML格式)进行接收

              * 无法使用XML格式或JSON格式

         * $.get(url,data,callback,type) - 请求类型是GET

           * 参数

             * url - 设置当前Ajax的请求地址

            * data - 设置当前Ajax的请求数据

              * 格式要求为key:value,构建Object即可

            * callback - Ajax请求成功后的回调函数

              * 该回调函数的形参(data),表示服务器端响应的数据内容

             * type - 设置服务器端响应数据的格式

              * 默认值 - HTML格式

              * xml - XML格式

              * json - JSON格式

         * $.post() - 请求类型是POST

           * 使用方式与$.get()方法一致

       * 封装第三层 - 特殊用法

         * $.getScript(url,callback) - 动态读取脚本(JavaScript代码)

           * url - 读取脚本的地址(本地或服务器)

           * callback - 读取成功后的回调函数

         * $.getJSON() - 接收JSON格式数据

     * 表单的Ajax异步请求

       * 表单的序列化

         * serialize()方法

           * 返回JSON字符串

           * 格式 - {key:value,key:value,..}

         * serializeArray()方法

           * 返回JSON对象

           * 格式 - [obj1,obj2,obj3,...]

         * 注意

           * 表单元素必须具有name属性值

       * jQuery.form插件

         * 作用 - 实现表单的异步提交

         * 两个核心方法

           * ajaxForm()方法

           * ajaxSubmit()方法 - 使用Ajax异步提交表单

         * 底层机制

           * 表单提交机制

       * 表单异步提交的方式

         * 不再使用submit按钮,而是使用button按钮

           * 通过为button按钮绑定click事件

             * 表单的序列化

            * 表单的异步提交

         * (常用)依旧使用submit按钮

           * 在<form>元素绑定onsubmit事件

           * 在onsubmit事件的处理函数中

             * 表单的序列化

            * 表单的异步提交

            * 阻止表单默认行为(return false)

     * 跨域请求 - $.getJSON()方法

       * 跨域

         * 完全跨域 - IP不同

           * http://www.baidu.com

           * http://www.tedu.cn

         * 跨子域 - IP相同,但端口号不同

           * http://127.0.0.1:8888

           * http://127.0.0.1:9999

       * 域名

         * 顶级域名

           * http://www.baidu.com

         * 二级域名

           * http://wenku.baidu.com

           * http://www.baidu.com/kongjian

       * 万维网协议

         * 默认是不允许跨域请求的

       * 实现跨域

     * Cookie

       * 基本内容

         * 浏览器的缓存

           * 存储在浏览器内存中

             * 关闭浏览器(窗口)后,数据会被自动销毁

           * 存储在用户电脑硬盘中

             * 关闭浏览器(窗口)后,数据不会被销毁

         * Cookie(小甜饼)

           * 缓存文件 - 一些用户数据存储在此

         * 问题

           * 用户数据是以明码(明文)来存储的

           * Cookie谁都可以读取

           * A网站生成的Cookie文件,归属到百度

       * 如何操作操作

         * 读取Cookie - 将用户名或密码从Cookie读取

           * document.cookie

         * 写入Cookie - 将用户名或密码写入到Cookie文件

           * 格式 - key=value;expires=时间

           * document.cookie

  • 相关阅读:
    geoServer的安装
    类设计原则
    零散知识点
    JavaScript setTimeOut()方法的一些疑点自己记录
    贴吧表情雨
    Laravel中tosql()是如何返回sql
    关于new static 与 new self的区别(后续有新发现,会继续更新)
    Lumen、Laravel开发问题记录
    文件实时对比,将数据组装入库(SQLITE)
    PHPSTUDY下升级mysql后无法启动
  • 原文地址:https://www.cnblogs.com/baiyanfeng/p/5042903.html
Copyright © 2011-2022 走看看