1、  Asynchronized JavaScript And XML

异步JavaScript和XML,它并不是一门新的语言或技术,实际是几项技术按一定的方式组合在一起共同的协作中发挥各自的作用,它包含:

  • 使用XHTML和CSS标准化呈现;
  • 使用DOM实现动态显示和交互;
  • 使用XML和XSLT进行数据交换与处理;
  • 使用XMLHttpRequest进行异步数据读取;
  • 使用JavaScript绑定和处理数据。

简单的说,AJAX是一种Web交互的新方法。

2、  包含了JS,XML,CSS,HTML,XSTL,DOM,XMLHttpRequest七种技术,AJAX把这已有的七种技术整合在一起,发挥出各个技术的优势,老技术,新思想。

3、  AJAX的特点:

  • 不需要刷新页面就可以改变页面内容,减少用户等待时间;
  • 改善表单验证方式,不需要打开新页面也不再需要将页面数据提交;
  • 按需获取数据,每次只从服务器端获取需要的数据;
  • 读取外部数据,进行数据处理整合;
  • 异步与服务器进行交互,在交互过程中用户无需等待,仍可继续操作。

4、  AJAX的工作原理:

AJAX模型在浏览器中整合了一个中间层(AJAX引擎)来处理浏览器和服务器之间的通信。传统Web交互请求和响应的都是页面,AJAX请求和响应的都是数据。

5、  AJAX应用于只需改变数据而不改变页面的场景。

6、  AJAX优势:

  • AJAX的根本理念是“按需取数据”,大大降低了数据的实际读取量;
  • 无需刷新更新页面,通过异步发送请求,避免频繁刷新页面,减少用户等待时间,给用户一种连续体验;
  • AJAX技术可以将传统的服务器工作转嫁到客户端,从而减轻服务器和带宽的负担,节约资源;
  • AJAX基于标准化技术,集合所有浏览器都支持这种技术,无需下载插件或虚拟机程序。

7、  AJAX开发五步骤:

  • 建立XMLHttpRequest对象;
  • 设置回调函数;
  • 使用open方法与服务器建立链接;
  • 向服务器端发送数据;
  • 在回调函数针对不同响应状态进行处理。

8、  XMLHttpRequest(XHR)对象,用来处理发送请求和响应,必须用JavaScript创建。IE浏览器和其他浏览器创建XHR对象方式不同,需做判断。具有如下8种属性:

onreadystatechange、readyState、responseText、responseXML、status

responseBody、responseStream、statusText

9、  readyState属性一共有5种取值:

  • 0:请求没有发出(在调用open()函数之前);
  • 1:表示请求已经建立但还没有发出(调用send()之前);
  • 2:表示请求已经发出正在处理之中(这里通常可以从响应得到内容头部);
  • 3:表示请求已经处理,正在接收服务器信息,响应中通常有部分数据可用,但服务器还未完成响应;
  • 4:响应已经完成,可以访问服务器响应并使用它。

10、          XHR对象中的方法:

  • open()将创建一个HTTP请求,并制定请求模式;
  • send()将创建的请求发送到服务器端,并接收回应信息;
  • abort() 取消发送的请求
  • getAllResponseHeaders()
  • getResponseHeader
  • setRequestHeader()

11、          jQuery AJAX主要包括对ajax(),get(),post(),load(),getScript(),getJSON()等几种常用无刷新操作方法的掌握。

  • load(url):载入远程HTML文件代码并插入DOM中,默认使用get方式,传递参数时自动转换为post方式。参数url:要载入的远程url地址;可选参数data:发给服务器的数据;可选参数callback:载入成功的回调函数;
  • get(url,[data],[callback]):使用get方式从服务器端获取数据;
  • post(url,[data],[callback]):使用post方式从服务器端获取数据;
  • getScript(url,[callback]):通过get方式请求载入并执行一个JavaScript文件;
  • getJSON(url,[data],[callback]):通过get方式获取json格式的数据。
  • ajax():jQuery封装AJAX的最底层方法,可以处理任何简单或复杂的ajax请求。该方法只有一个参数,包含配置及回调函数信息。

12、          JSON,最重要的是理解它是一种数据格式,不是一种编程语言。

一种轻量级的数据交换格式,经常用于服务器和客户端传输数据。

数据在键值对中;数据由逗号分隔;花括号保存对象;方括号保存数组;

JSON值可以是number,string””,boolean, null, array[],object{},。

var peo={name:XXX,age:XXX}

  • JSON中字符串必须使用双引号;
  • JSON对象没有申明变量,没有末尾的分号;
  • JSON数组存放的可以是不同类型的数据,而且可以和对象可以结合起来;
  • 可以把JSON数据结构解析为有用的JS对象;

13、          JS中包含一个全局对象JSON,该对象有两个方法:

stringify():用于把JS对象序列化为JSON的字符串;

parse():用于把JSON字符串解析为原生的JS值。

14、遍历对象$.each(mapName,function(key,value){

});

JavaWeb AJAX的更多相关文章

  1. 14.javaweb AJAX技术详解

    一.简介 1,  ajax:在不重新加载网页的前提下,与服务器交换数据并更新部分网页的技巧,但其本身并不是一种新技术 2,  核心:XMLHttpRequest对象.AJAX技术主要是通过此对象完成的 ...

  2. JavaWeb——Ajax与MVC学习总结

    Ajax: 什么是Ajax? 为什么使用Ajax? 使用jquery Ajax实现登录 Ajax实例练习: 设计模式 设计模式的定义: 设计模式的作用: MVC设计模式 MVC设计模式的模块组成: M ...

  3. Java初中级程序员面试题宝典

    Java基础部分 &与&&区别? &和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假:但是&&当第一个条件不成之后,后面的条件都 ...

  4. javaWeb项目(SSH框架+AJAX+百度地图API+Oracle数据库+MyEclipse+Tomcat)之一 基础Struts框架搭建篇

    即将开始着手写这个项目,所以希望通过这篇博客来记录自己学习的过程 今天开学第一天,就上了软件工程实践课,自己也开始着手做这个大作业了.首先我的项目名称叫做智能班车管理系统. 项目的概况: 该软件产品是 ...

  5. javaWeb中使用ajax上传文件

    javaWeb上传图片 上传文件所必要的两个jar包:commons-fileupload.jar.commons-io.jar. jar包下载:github路径 核心代码: String withP ...

  6. javaweb局部刷新-ajax异步请求springMVC显示返回的jsp内容,代替iframe

    在jsp上要引入jquery <script src="<%=request.getContextPath()%>/js/jquery_ui/jquery.js" ...

  7. javaweb 解决将ajax返回的内容用document.write写入,FireFox一直加载的问题

    在document.write方法后加上document.close就解决了, 想知道原理的小伙伴可以继续看 浏览器在解析html时会打开一个流,这是用document.write中写入,是加入当解析 ...

  8. JavaWeb笔记——ajax异步请求

     1. ajax是什么?   * asynchronous javascript and xml:异步的js和xml   * 它能使用js访问服务器,而且是异步访问   * 服务器给客户端的响应一般是 ...

  9. JavaWeb之Ajax

    一.什么是Ajax 1.1.Ajax的定义 Ajax:(Asynchronous JavaScript And XML)指异步 JavaScript 及 XML 不是一种新的编程语言,而是一种用于创建 ...

随机推荐

  1. 4W1T教程1 如何使用幻灯片

    第一步,读取类别为xxXX前五张幻灯片 <!-- 幻灯片循环开始-->{section name=banner loop=$banner} <li data-transition=& ...

  2. linux下发现可疑用户时处理办法

    如果发现了linux被可疑用户远程登录了,怎么解决呢? 1.先查看最近系统的登录情况 last -10 表示最近10个用户登录的信息,如果发现有可疑账户,就是密码被破解了 [root@localhos ...

  3. vue.js存储--localStorage

    //list例子:绑定从localStorage中读取的数据,动态添加list并监听将数据变化存储在localStorage中,绑定点击事件改变样式, 页面 data数据: input_name:'' ...

  4. UVA 11384 正序数排列

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  5. gravity与layout_gravity的区别

    android:gravivty 控件的内容显示位置 android:layout_gravity 控件在屏幕的布局位置,相对于容器或者父控件的位置

  6. A simple script to get all pictures

    #-*- coding:utf-8 -*- import shutil import os from Tkinter import * import time import re def get_al ...

  7. Analyzer报表里显示的 * 星号、红叉、#井号的意义

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  8. fineUI ueditor(可能别的editor也有)配置注意事项

    1.把ueditor配置在弹窗里的一些小问题 这种弹窗的原理 如果把ueditor放进这个小窗口里 放进items里(以下截图还没有放) 那么配置的ueditor是不可用的 就好像enable=fal ...

  9. Thread

    问题:编写一个能提现多线程的例子?假设有t1,t2两个线程,如何保证t2线程在t1线程执行完后再执行? package cn.changb.thread; public class MyThread ...

  10. 淘宝网触屏版 - 学习笔记(0 - 关于dpr)

    注:本文是学习笔记,并不是教程,所以会有很多我不理解或猜测的问题,也会有不尽详实之处,望见谅. 对于pc端网页设计师来说,移动端的网页制作,我之前只是简单的加了一个 <meta name=&qu ...