开发者学堂课程【Ajax:ajax第一例:helloworld】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/31
ajax第一例:helloworld
目录:
一.写服务器端代码
二、做客户端的响应
三、写客户端代码
四、总结
一.写服务器端代码
写一个Servlet Wizard,这是服务器端的 :
package:cn.itcase.web.servlet
Name:AServlet
选择 doGet()
点击Next
二、做客户端的响应
写一条代码,打一条辅助语句“helloAJAX!”再做一个客户端的响应:response.getWriter().print“helloAJAX!!!”;没说相应的内容也没有问题,这个是纯文本,不会引发什么问题。
三、写客户端代码
客户端代码:ajax1.jsp,点击按钮后,使服务器的相应显示在这里。此时要请求服务器。
首先给按钮添加监听器:
window.onload = function() {//文档加载完毕后执行
var btn = document. getElementById ("btn");
btn.onclick = function() {//给按钮的点击事 件注册监听。
其次,ajax四步操作,得到服务器的响应,把响应结果显示到h1元素中:
写一个函数,这个函数是创建异步对象:
funation createXMLHttpRequest(){
try{
return new XMLHttpRequest ();//大多数浏览器
} catch (e) {
try
return Actviexobject ("Msxm12. XMLHTTP");//IE6.O
} catch (e) {
try {
return Actviexobject ("Microsoft . XMLHTP");//IE5.5及更早版本} catch (e) {
alert ("哥们儿,您用的是什么浏览器啊? ");
throw e;
1.得到异步对象:var xmlHttp = createXMLHttpRequest() ;
2.打开与服务器的连接:
指定请求方式
指定请求的URL
指定是否为异步请求
xmlHttp.open("GET", "", true) ;
3.发送请求:
xmlHttp.send (null);//GEr请求没有请求体,但也要给出null,不然rirePox可能会不能发送!/*
4.给异步对象的onreadystatechange事件注册监听器:
xmlHttp .onreadystatechange = function() {//当xmlHttp的状态发生 变化时执行
//双重判断: xmlHttp的状态为4(服务器响应结束),以及服务器响应的状态码为200(服务器响应成功)。
if (xm1Http. readyState == 4 && xmlHttp.status == 200) {
初衷是把响应结果显示在h1元素中,所以此时需要:
//获取服务器的响应结束
vartext = xmlHttp responseText;
//获取h1元素
Var h1 = document .getElementById("h1") ;
h1. innerHTML = text;
四、总结
代码很重要,相较于以前教难。此时Servlet已经执行。服务器相应了,页面局部刷新,这就是ajax。