加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

AJAX技术与应用浅析

发布时间:2020-12-16 00:40:35 所属栏目:百科 来源:网络整理
导读:AJAX(asynchronous javascript and xml)技术本质是浏览器内置的XMLHttpRequest对象,主要用于异步地向服务 器发 送请求,接收服务器返回的数据并局部更新页面,如表单的验证提示等。整个过程页面无刷新,不打断用户的操 作, 增强了用户的体验。 一、AJAX对

AJAX(asynchronous javascript and xml)技术本质是浏览器内置的XMLHttpRequest对象,主要用于异步地向服务器发

送请求,接收服务器返回的数据并局部更新页面,如表单的验证提示等。整个过程页面无刷新,不打断用户的操作,

增强了用户的体验。

一、AJAX对象的获取

AJAX对象的获取要区分浏览器。
浏览器为IE类型的获取的方式:new ActiveXObejct('Microsoft.XMLHttp');
浏览器为非IE类型的获取的方式:new XMLHttpRequest()。

二、AJAX对象常用的属性

1、onreadystatechange:绑订一个事件处理函数,该函数用来处理readystatechange事件(
当readyState的值发生了改变,比如,从0变成1,就会产生该事件)。
2、readyState:有5个值,分别是0,1,2,3,4,表示ajax对象与服务器进行通信的一种状态。
比如,4表示ajax对象已经获得了服务器返回的所有的数据。
3、responseText:获得服务器返回的文本。
4、responseXML:获得服务器返回的xml文档。

5、status:获得服务器返回的状态码。

三、应用案例(表单验证)

1、获取AJAX对象的方法getXhr()
2、发送get请求的验证代码

3、发送post请求的代码
4、服务器端Servlet代码
5、总结
AJAX对象给服务器发送不同的请求方式(get/post)时,需解决编码问题以避免乱码,出现乱码的原因和解决方式如下。
1)get请求发生乱码的原因
IE浏览器提供的ajax对象在发送请求时使用"gbk"对含有中文的请求参数进行编码。非IE浏览器使用"utf-8"进行编码。服
务器端默认情况下,会使用"iso-8859-1"进行解码。
2)get请求解决乱码的方法
step1,让服务器使用指定的字符集解码。比如,可以修改tomcat的server.xml文件(conf/server.xml),在connector项中
添加URIEncoding="utf-8"即可
step2,使用encodeURI函数(js内置的函数,会使用"utf-8"进行编码)对请求参数进行编码。encodeURI(
String params)。
3)post请求发生乱码的原因
所有浏览器提供的ajax对象都会使用"utf-8"对中文参数进行编码。服务器端默认情况下,会使用"iso-8859-1"进行解码。
4) post请求 解决乱码的方法
处理请求的Servlet程序中添加request.setCharacterEncoding("utf-8")即可。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读