初识ajax

刚刚接触ajax,感觉比较抽象。总结了些自己的理解

全局刷新:

1.使用form,href等发起的请求为全局刷新

2.用户发起请求,视图改变,跳转视图,使用新的数据添加至页面。

3.缺点:

​ a.传送数据量较大,占用网络带宽

​ b.浏览器需要重新渲染整个页面

​ c.用户体验好差

局部刷新

1.在当前页面中。发起请求,获取数据,更新当前页面的dom对象,对视图部分刷新

2.优点:

​ a.数据量小,网络中传输速度快

​ b.更新页面内容,部更新页面,浏览器不用全部渲染视图

​ c.一个页面可以做多个局部刷新

​ d.从服务器获取数据,更新视图

3.异步请求对像

​ 在局部刷新中,使用异步请求对象,在浏览器内部发起请求,获取数据

4.异步对象XMLHttpRequest接收

1.js中的一种对象,使用js语法创建和使用这个对象

​ var xhr = new XMLHttpRequset();创建后使用xhr对象的属性或者函数进行异步对象的操作

使用异步对象进行局部刷新,异步对象主要发起请求,传递请求的参数,从服务器接收数据
2.局部刷新需要使用的技术:

​ a.javascript:创建XMLHttpRequest对象,调用他的属性与方法

​ b.DOM:处理dom,更新select的数据

​ c.css:处理视图,更新,美化

​ d.servlet:服务器技术

​ e.数据格式:json

Ajax

Ajax是一种在无需重新加载整个网页的情况下,能够更新部分页面内容的新方法

使用ajax进行局部刷新

核心:javascript与xml(json)

异步对象XMLHttpRequest属性与方法

​ 1.var xhr = new XMLHttpRequset();创建后使用xhr对象的属性或者函数进行异步对象的操作

​ 2.XMLHttpRequest方法

​ ①open(请求方式,服务器访问地址,异步还是同步)

​ 例如:xhr.open(‘get’,;loginServlet,true)

​ ②send():使用异步对象发送请求

​ 3.XML.HttpRequest属性

​ ①readyState:请求状态:

​ a,0:表示创建异步对象时,new XMLHttpRequset();

​ b.,1:表示初始异步对象的请求参数,执行open()方法

​ c.,2:使用send()方法发送请求

​ d.,3:使用异步对象从服务器接收数据

​ e.,4:异步对象接收数据,并在异步对象内部处理完成后

​ ②status属性:网络状态和Http的状态码对应

​ a.200:请求成功

​ b.404:服务器资源没有找到

​ c.500:服务器内部代码有错误

​ ③responseText属性:表示服务器返回的数据

​ 例如:var data = xhr.responseText;

异步对象XMLHttpRequest使用步骤

1使用js创建异步对象

var xhr = new XMLHttpRequest();

2.初始请求参数,执行Open()函数

xhr.open('get',loginServlet,ture)

​ a.‘get’--------请求方法

​ b.,loginServlet--------请求地址

3.发送请求,执行send()

​ xhr.send()
4 给异步对象绑定事件,事件名称 onreadystatechange

​ xhr.onreadystatechange = function(){ 事件发生时的代码}

​ 根据readyStatue值做请求处理


```javascript
var xhr = new onreadystatechange()
			if(xhr.readyState == 4 %% xhr.status==200){
				// 从页面获取数据,更新当前DOM对象
				var data= xhr.responseText;
				// 更新数据
				document.getElementById('box').innerHTML = data
			}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值