博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AJAX
阅读量:6675 次
发布时间:2019-06-25

本文共 1909 字,大约阅读时间需要 6 分钟。

AJAX

什么是Ajax

Ajax(Asynchronous JavaScript and XML)

允许浏览器与服务器通信而无须刷新当前页面的技术

 

不需要刷新整个页面便可与服务器通讯的方法

-flash

-JavaScript

-框架

-隐藏的iframe

-XMLHttpRequest:该对象是对JavaScript的一个扩展,可使网页与服务器进行通信。是创建Ajax应用的最佳选择实际上通常把Ajax当成XMLHttpRequest对象的代名词

 

 

AJAX工具包

Ajax并不是一项新技术,它实际上是几种技术,每种技术各尽其职,以一种全新的方式聚合在一起

——服务器端语言:服务器需要具备向浏览器发送特定信息的能力。Ajax与服务器语言无关。

——XML(可扩展标记语言)是一种描述数据的格式。Ajax程序需要某种格式化的格式来在服务器和客户端之间传递信息,XML是其中一种选择

——XHTML(扩展超媒体标记语言)和CSS(级联样式表)标准化呈现。

——DOM(文档对象模型)实现动态显示和交互:

——使用XMLHTTO组件XMLHttoRequest对象进行异步数据读取

——使用JavaScript绑定和处理所有数据

 

创建XMLHttpRequest对象

xhr = new XMLHttpRequest();

 

XMLHttpRequest对象的方法

abort():停止当前的请求

getAllResponseHeaders():把HTTP请求的所有响应首部作为键/值对返回

getResponseHeader("header")返回指定首部的串值

open("method","url"):建立对服务器的调用。Method参数可以是GET、POST或PUT。url参数可以是相对url或绝对url

send(content):向服务器发送请求

setRequestHeader("header","value"):把指定首部设置为所提供的值。在设置任何首部之前必须先调用open()

 

XMLHttpRequest对象的属性

onreadystatechange:每个状态改变是都会触发这个事件处理器,通常会调用一个javascript函数

readyState:请求的状态,有5个可取值:0=未初始化,1=正在加载,2=已经加载,3=交互中,4=完成

responseText:服务器的响应,表示为一个串

responseXML:服务器的响应,表示为XML,这个对象可以解析为DOM对象

status:服务器的HTTP状态码(200对应OK,404对应NotFount等)

 

发送请求:

* 利用XMLHttpRequest实例与服务器进行通信包含以下3个关键部分:

——onreadystatechange事件处理函数

——open方法

——send方法

 

* onreadystatechange:

——这个事件处理函数由服务器触发,而不是用户

——在ajax执行过程中,服务器会通知客户端当前的通信状态。这依靠更新XMLHttpRequest对象的readyState来实现。改变readyState属性是服务器对客户端连接操作的一种方式。每次readyState属性的改变都会触发readystatechange事件

GET请求:

 

<%--  Created by IntelliJ IDEA.  User: dell  Date: 2019/5/23  Time: 15:19  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>    Title            HelloAjax

 

post请求

<%--  Created by IntelliJ IDEA.  User: dell  Date: 2019/5/23  Time: 15:19  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>    Title            HelloAjax

转载于:https://www.cnblogs.com/yangHS/p/10910900.html

你可能感兴趣的文章
给 iOS 开发者的 RxSwift(一)
查看>>
Excel2013 破解(编辑工作表受保护)密码
查看>>
Python基础-变量作用域
查看>>
php课程 6-21 HTML标签相关函数
查看>>
Spring Boot的Tomcat 启动详解
查看>>
Elasticsearch 2.3.3 JAVA api说明文档
查看>>
zTree怎么判断树有节点展开或者完全关闭的
查看>>
如何删除一个标签,但是保留里面的内容?
查看>>
设计模式-行为型模式,python访问者模式
查看>>
命令模式
查看>>
如何自定义长连接策略
查看>>
平衡二叉树与自平衡二叉树(红黑树)的区别
查看>>
读取JPG图片的Exif属性(一) - Exif信息简介
查看>>
【译文】追求生产极简主义
查看>>
FTP服务器原理(转)
查看>>
精选30道Java笔试题解答
查看>>
特殊符号 UNICODE编码
查看>>
C#图解教程 第八章 表达式和运算符
查看>>
解决NavicatPremium导入CSV文件中文乱码的问题
查看>>
Python基础:语法基础(3)
查看>>