一、说在前面

昨天 学习了 json 数据结构
今天 学习ajax 并使用 json 

二、jquery的ajax操作

1、查询jquery的官方文档发现与ajax相关的jquey方法如下:

1)$.ajax([options])
2)load(url, [data], [callback])
3)$.get(url, [data], [fn], [type])
4)$.getJSON(url, [data], [fn])
5)$.getScript(url, [callback])
6)$.post(url, [data], [fn], [type])

2、jquery的ajax方法的分类(一般我们会将jquery的ajax方法习惯性的分为三种)

第一种:原始方法:

$.ajax([options]) :jquery的ajax最底层的方法,可以认为其他的ajax的操作都是基于此方法的。

第二种:常用方法:

load(url, [data], [callback]) :对象调用的方法,可以是get请求也可以是post请求

$.get(url, [data], [fn], [type]) :get提交方式

$.post(url, [data], [fn], [type]) :post提交方式

第三种:高级方法:

$.getJSON(url, [data], [fn])

$.getScript(url, [callback])

3、jquery的ajax方法的参数(以上的方法的参数大都是重复的,分为如下几个)

1)url:请求提交的服务器路径  ----  xmlhttp.open("post","url")

2)data:向服务器端提交的数据  ----xmlhttp.send(data);

3)callback/fn:ajax请求返回后的回调函数 --- xmlhttp.onreadystatechenge = function(){}

4)回调函数的参数有三个:data:返回值 ,info:执行信息(成功或失败的信息) ,xmlhttprequest:ajax引擎对象

5)type:返回的数据类型 xml, html, script, json, text, _default ----- xmlhttp.responsTest;  xmlhttp.responseXML;

6)options:是一个json格式的参数集合

4、load方法( load(url, [data], [callback]) )

注意点:(1) 此方法是所有ajax操作方法中唯一对象调用的方法,其他都是全局方法

    (2) 如果提交时携带了请求参数(json数据格式或key/value字符串),即data部分存在即为post提交,data部分不存在即为get提交

    (3) 在将json转换成json格式对象时的格式是 eval("("+json+")"); 原因是:eval本身的问题。 由于json是以”{}”的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式。

5、$.get方法( $.get(url, [data], [fn], [type]) :get提交方式 )

6、$.post方法 ( $.post(url, [data], [fn], [type])  )

与get提交方法相同 只不过的提交方式是post

7、$.ajax方法( $.ajax([options])  )

1)options是一个json格式的对象,参数是通过键值对的形式存在的

2)常用的参数如下:

8、表单序列化

  如果想让表单通过ajax异步提交,那么首先我们要通过js获取到每个表单中输入的值,如果表单项比较多的话,想必又是一件很麻烦,很痛苦的事情,那么我们可以通过jquery的表单序列化的操作将表单的数据拼接成提交的参数格式 即:name=value&name=value&name=value 或者 json格式对象

1)使用serialize方法

2)js代码:

3、效果:

2.11 学习总结 之 ajax的更多相关文章

  1. jQuery学习笔记之Ajax用法详解

    这篇文章主要介绍了jQuery学习笔记之Ajax用法,结合实例形式较为详细的分析总结了jQuery中ajax的相关使用技巧,包括ajax请求.载入.处理.传递等,需要的朋友可以参考下 本文实例讲述了j ...

  2. laravel基础课程---11、lavarel的ajax操作(ajax优劣势是什么)

    laravel基础课程---11.lavarel的ajax操作(ajax优劣势是什么) 一.总结 一句话总结: 优势:用户友好度:异步通信,不会频繁刷新页面,用户友好度比较高 优势:减轻数据库压力 缺 ...

  3. 学习笔记:AJAX 跨域问题

    学习笔记:AJAX 跨域问题 AJAX 跨域是浏览器的问题. 只要 xhr 请求,不同的域名就会出现 AJAX 跨域问题. JSONP 是一要简单方式,但是有很多弊端,需要修改服务端代码. JSONP ...

  4. C++11 学习笔记 std::function和bind绑定器

    C++11 学习笔记 std::function和bind绑定器 一.std::function C++中的可调用对象虽然具有比较统一操作形式(除了类成员指针之外,都是后面加括号进行调用),但定义方法 ...

  5. Jquery学习笔记(11)--jquery的ajax删除用户,非常简单!

    jquery的ajax,简直简单!!只要一个$.get(url,map,function)就搞定了! index.php: <!DOCTYPE html> <html lang=&q ...

  6. Ajax学习(1)-简单ajax案例

    1.什么是Ajax? Ajax是Asynchronous JavaScript and XML 的缩写,即异步的Javascript和XML. 可以使用Ajax在不加载整个网页的情况下更新部分网页信息 ...

  7. 11月14日用AJAX、PHP、SESSION做购物车

    购物车网页代码 1.登录界面login.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...

  8. C++ 11 学习1:类型自动推导 auto和decltype

    Cocos 3.x 用了大量的C++ 11 的东西,所以作为一个C++忠实粉丝,有必要对C++ 11进行一个系统的学习. 使用C++11之前,一定要注意自己使用的编译器对C++11的支持情况,有些编译 ...

  9. C++11学习

    转自: https://www.cnblogs.com/llguanli/p/8732481.html Boost教程: http://zh.highscore.de/cpp/boost/ 本章目的: ...

随机推荐

  1. Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

    在广播中启动一个Dialog时出现如下错误信息:Caused by: android.view.WindowManager$BadTokenException: Unable to add windo ...

  2. activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便

    如果我们像给任务配置监听,按照常规的做法是这样的 一个个配置,比较麻烦. 现在利用ActivitiEventListener,监听全局事件,并且可以判断不同的事件类型,进而执行不同的业务逻辑. 1.定 ...

  3. 使用 JvisualVM 监控 spark executor

    使用 JvisualVM,需要先配置 java 的启动参数 jmx 正常情况下,如下配置 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmx ...

  4. JVM 学习笔记 - 带你掌握JVM类加载机制

    前言 往期JVM系列: 精美图文带你掌握 JVM 内存布局 本节主要内容: 类的生命周期 类加载阶段描述 数组类和非数组类在加载阶段的差别 父子类初始化顺序 接口的初始化 JVM如何处理 多线程同时初 ...

  5. JAVA关于回文判断的实现

    (一). 设计思想: 首先输入字符串,然后判断长度若长度为0或1则输出TRUE若长度大于一则进行判断, 若符合条件则输出TRUE反之输出FALSE. (二)程序源代码 import java.util ...

  6. c++类的创建与使用

    c++类的创建与使用 前言: 之前一直对c++的类的创建与使用不太熟悉,有些概念还是有点模糊,借着这次休息的机会整理一下对应是知识点.如有不正确的地方还希望各位读者批评指正. 一.C++中public ...

  7. python 中的富文本编译器

    第一种方式: 1,pip install django-tinymce 2,在INSTALL_APPS里面添加tinymce        在站点中使用: 配置setting.py TINYMCE_D ...

  8. Linux中{ }的用法

    一.生成序列 格式:{#..#},按照ASCII表的顺序进行生成,如{a..c}表示a b c,也可以{c..a}倒叙的形式生成c b a # ..} # echo {z..a} z y x w v ...

  9. luogu P2761 软件补丁问题

    网络流(x) 状压(√) 初始状态为全1,合法状态为(state&b1)&(state|b1) == state && (state&b2)&(stat ...

  10. Python—处理Excel表格

    一.使用xlrd和xlwt这两个库来处理excel,即xlrd是读excel的库,xlwt是写excel的库 1.使用 xlrd 读取Excel数据 # -*- coding:utf-8 -*- im ...