1、简述如何使用XmlHttpRequest对象实现无刷新效果
主要运用ajax局部刷新效果。结合javascript进行验证。
首先是创建XmlHttpRequest对象(xmlhttp)。根据IE和火狐不同浏览器创建该对象。记得用全局变量来接收该对象哦。
然后(xmlhttp.onreadystatechange)创建回调函数。用来处理服务器响应回来结果状态来进行交互
之后(xmlhttp.open())方法进行服务端的处理
最后(xmlhttp.send())发送过去。里面带个参数null,但IE可以不用带参数
2、简述使用Ajax有什么好处?
最简洁的回答就是:它不需要整个页面刷新数据,只是局部起到无刷新数据,而且同时它向服务器发送完毕后,可以继续干其它的事,不需要继续等待,而是可以继续原来的扣件,在服务器响应完成后,浏览器再响应展示给用户,起到异步作用
1、局部刷新,避免了重复加载、浪费网络资源的现象
2、提供连续的用户体验,而不被页面刷新中断
3、Ajax的特点:
Ajax强调的是异步发送用户请求,在一个请求的服务器响应还没有结束时,可以再次发送请求。这种请求的发送可以全用户获得类似于c/s的桌面程序的用户体
4、Ajax (Asynchronous Javascript And Xml)
5、javascript编码对汉字转换:encodeURIComponent(String str);
6、servlet中response.setcontentType("text/plain;charset="utf-8"");
plain表示纯文本
7、在Ajax的验证中out.println();不采用这种换行的方式提交给服务器、因为服务器会把换行的空格也作为字符串返回给Ajax的经xmlHttpRequest对象,带来不必要麻烦
8、如果xmlHttpRequest对象open()中的methor采用POST的提交方法,必须要指定它请求的头信息xmlhttp.setRequestHead("content-type",application/x-www-form-urlencoded");
9、xmlhttp.responseText这个上下文本接收服务器返回的是字符串类型
例如:if(xmlhttp.responseText=="false"){
out.print("服务器返回为真是一个字符串,但必须有双引号括起来,不然无法判断");
}
10、Ajax技术的核心组件是XMLHttpReques,它可以向服务器端发磅异步请求,并获取响应
11、Ajax对于中文的显示容易产生乱码,需要在程序中进行字符编码。requestText返回的数据是默认按照UTF-8格式进行编码,因此需要在发送请求与返回数据 时均设置编码为UTF-8,才可以解决中文乱码的显示问题(请求和响应都要设置编码方式哦)