简介:
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
优点:
是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<!--[if lte IE7]> <script src='./json2.js'></script><!endif-->
<!-- 上面这个不是注释 而是判断浏览器是大于IE7 时不加载 小于等于IE7时加载-->
</head>
<body>
<script>
// 什么是ajax
// Asynchronous javaScript and XML中文意思就是用js异步的方式操作XML、
// ajax 流程
// 一、创建ajax 对象
//var xhr = new XMLHttpRequest() //创建XML ajax 对象 IE6及以下不支持
// 兼容
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest
} else {
xhr = new ActiveXObject('Microsoft.XMLHTTP')
}
// 二、调用open方法 输入网址 open(打开方式,打开地址,是否异步)
xhr.open('get', url, true)
// 三、send() 发送
xhr.send()
// 四、等待服务器返回
// 需要通过xhr.onreadystatechange=function(){} 监听ajax状态
// ajax状态有5个 readyState 0-1-2-3-4
// 0 (初始化) 还没有调用open()方法
// 1(载入) 已经调用send方法 正在发送请求
// 2(载入完成) send() 方法完成,已收到全部响应内容
// 3(解析) 正在解析响应内容
// 4(完成) 响应内容解析完成,可以在客户端调用了
// 监听服务器状态 status状态 200 代表返回成功
xhr.onreadystatechange = function() { //监听事件
if (xhr.readyState === 4) { //监听ajax状态
if (xhr.status === 200) { //监听服务器状态
//服务器状态为200时 返回xhr.responseText
console.log(xhr.responseText) //文本字符串
}
}
}
</script>
</body>
</html>