ajax菜鸟教程(jq请求ajax的方法)
传统开发的菜鸟缺陷是浏览器页面的整体更新。如果我们只想获取或升级页面中的教程一些信息,我们必须使用一些更新技术。请求部分更新是菜鸟合理改善用户体验的关键方法。
Ajax技术是教程基于js语言扩展,可以将要求发送到后台,请求从后台获取统计数据,菜鸟然后在页面上部分更新数据。教程
本教程将通过对ajax传统的请求使用方法,融合json控制方法,菜鸟整合跨域等高端技术的教程形式,对ajax做一个全面的请求介绍。
组合视频效果更好~~~
什么是菜鸟Ajax?AJAX = Asynchronous Javascript and XML(异步的 Javascript 和XML)。
AJAX 这是教程一种新方法,可以升级部分页面视频,请求而无需重新加载所有网页。
AJAX 这不是一种新的编程语言,而是一种应用现有技术混合应用的新方法。ajax 常用的技术有Javascript, html , dom , xml ,css 等。通常是Javascript , XML.
Javascript: 应用脚本目标XMLHttpRequest 发送请求, 接受回应数据XML: 推送和接收的数据类型现在使用json
AJAX 不仅需要前面的技术,还需要后面(服务器)的配合。服务器必须提供数据,数据就是数据。AJAX 响应结论的要求。
全球更新和部分更新B/S 在结构工程中, 浏览器(Browse)通过网络向服务器发送用户请求和参数(Server),服务端应用 Servlet接受要求,并将处理结果返回浏览器。
浏览器在html,jsp 数据呈现在上面,混合使用css, js 协助装饰页面,或回应事情。
全局更新
解决登录要求:
index.jsp 登录要求——–LoginServlet result.jsp
进行要求request 环节:
浏览器现在的内存是index 页面的内容和数据 :
服务端回复结论:
sevlet 返回后,覆盖所有数据index 页面内容, result.jsp 覆盖所有浏览器内存数据。 所有浏览器数据都被更新了。再次在浏览器窗口显示数据、款式、标识等
全局更新原理:
1) 浏览器需要亲自向服务器发送请求协议包。
2) 这种行为导致服务将回应包直接发送到浏览器内存中
3) 这种行为导致浏览器内存中的原始内容被覆盖
4) 当浏览器显示数据时,只有回应数据才能显示
部分更新
当浏览器显示数据时,此时可以在窗口看到回应数据, 还可以看到浏览器内存中的原始数据
部分更新原理:
1) 浏览器不能向服务端发送请求
2) 浏览器委托浏览器内存中的一个脚本目标取代浏览器发送请求.
3) 这种行为导致服务端直接将回应包推到脚本目标内存中
4) 这种行为导致脚本目标内容被覆盖,但此时浏览器内存中的大部分内容没有受到任何影响
5) 这种行为导致浏览器在显示数据时显示原始数据和响应数据
AJAX 一种完成部分更新的技术。
异步请求目标:
在部分更新中,必须创建一个目标来取代浏览器所需的动作,这个目标存储在内存中。
取代浏览器要求并接受响应数据。这个目标被称为异步请求目标。
全局更新是同一行为, 部分更新为异步行为[浏览器数据没有全部升级] 该异步目标用于在后台与服务器交换数据。XMLHttpRequest 这就是我们所说的异步目标。
XMLHttpRequest 目标可以:
在不重新加载页面的情况下升级网页 页面已载入后向服务器请求数据 输入页面后,从服务器获取数据所有现代浏览器 (IE7 、Firefox、Chrome、Safari 及其 Opera) 都内建了 XMLHttpRequest 目标。根据一行简单 Javascript 编码,我们可以建立 XMLHttpRequest 目标
建立 XMLHttpRequest 对象词法(xhr): var xmlhttp=new XMLHttpRequest();
AJAX 关键目标是XMLHttpRequest
AJAX 异步完成过程XMLHttpRequest 目标介绍
(1) 创建对象的方法
var xmlHttp = new XMLHttpRequest();
(2) onreadstatechange 事情
当要求被发送到服务器时,我们应该执行一些回应任务。通常情况下。readyState 更改时,会打开 onreadystatechange 事情。此事件可以具体解决函数function。
根据分辨XMLHttpReqeust 获取服务器返回的数据。
词法:
xmlHttp.onreadystatechange= function() {
if( xmlHttp.readyState == 4 && xmlHttp.status == 200){
解决服务器返回数据的问题
}
}
以下是 XMLHttpRequest 对象的三个关键特征:
特性表明:
onreadystatechange 特性:一个 js 函数名 或 立即定义函数,每次readyState 当特性发生变化时,函数将被启用
readyState 特性:
存在 XMLHttpRequest 状态。从 0 到 4 产生变化。
• 0: 要求不初始化,建立异步请求目标 var xmlHttp = new XMLHttpRequest()
• 1: 复位异步请求目标, xmlHttp.open(请求方式、地址、true)
• 2: 异步目标发送请求, xmlHttp.send()
• 3: 异步目标接收回复数据 从服务器返回数据。XMLHttpRequest 内部解决。
• 4: 异步请求目标已经结束了数据分析。 此时可以获取数据。
status 特性:
200: “OK”
404: 未找到页面
(1) 复位请求参数:
方式:
open(method,url,async) : 复位异步请求目标
参数说明:
method:要求的类型;GET 或 POST
url:服务器的servlet 地址
async:true(异步)或 false(同歩)
比如 :
xmlHttp.open(“get”,”http:192.168.1.20:8080/myweb/query”,true)
(2) 发送请求
xmlHttp.send()
(3) 接受服务器回应的信息
如果您需要从服务器中得到回应,请选择 XMLHttpRequest 对象
responseText 或 responseXML 属 性 。
responseText:得到字符串回应数据responseXML:得到 XML 方式响应数据
AJAX 案例 全局更新计算 bmi要求:计算客户BMI。 客户在jsp 键入自己的身高、重量;servlet 中测算BMI,并表明 BMI 数值和建议。
BMI 指数(即身体质量指数,英语为BodyMassIndex,通称 BMI),用体重公斤数除了个子米数平方米得到的数据,是考虑体重和体重水平以及是否健康的国际标准
成人的 BMI 标值:
1)过轻:小于 18.5
2)正常:18.5-23.9
3)太重:24-27
4)肥胖:28-32
5)非常肥胖,高于 32
开发流程:1在idea 新项目名称:ch01-bmi-ajax
2配备tomcat 如果已经配备了服务器,省去了这一步。
挑选Local
配备tomcat 服务器的位置
Module 加上tomcat 适用
发生窗口
挑选 2 Library
明确使用tomcat
3建立 jsp,界定form,有参数name, weight, height
4建立 Servlet, 名字 BMIServlet
5注册 servlet
6建立 result.jsp
web 目录下建立 result.jsp 文档
7配备操作程序,输入参数。bmi
应用HttpServletResponse 回应导出1新建jsp: indexPrint.jsp
2新建Servlet, 名字 BMIServeltPrint
应用 ajax 要求,测算 bmi1新建ajax.jsp
2在ajax.jsp 的head 部分特定 doAjax()函数
3拷贝BMIServletPrint,重新命名 BMIServletAjax 代码不需要修改
4注册 Servlet
5访问浏览器ajax.jsp
在BMIServltAjax 第一行设置断点,然后在第一行设置断点, jsp 点击按钮进行要求,观察浏览器中弹出内容的变化
6改动ajax.jsp 里的doAjax()函数
7浏览ajax.jsp 要求
在jsp 点击按钮进行要求,观察浏览器中弹出内容的变化
8获得dom 目标 value 值
9在浏览器中检测推送ajax 要求
10改动 doAjax 函数