异步操作的一个小案例,在h1中加入一个文本内容(GET请求)

来源:互联网 发布:php tmp目录 编辑:程序博客网 时间:2024/06/05 14:48
jsp的有关的一些代码
  <script type="text/javascript">
  //创建异步对象
  function createXMLHttpRequest(){
 try {
return new XMLHttpRequest();//返回大多数浏览器都支持的对象
} catch (e) {
try {
return new ActiveXObject("Msxml12.XMLHTTP");//返回ie6支持的对象
} catch (e) {
try {
return ActiveXObject("Microsoft.XMLHTTP");//返回ie5.5支持的版本
} catch (e) {
alert("兄弟,你使用的是自定义浏览器吗?");
throw e;//最后都不符合的话就会抛出一个异常
}
}
}
  }
  window.onload=function(){//文档加载完毕之后就执行该代码
 var btn=document.getElementById("btn");//获得鼠标点击的对象
 btn.onclick=function(){//加上鼠标监听事件
var request=createXMLHttpRequest();//得到XMLHttpRequest对象
request.open("GET","<c:url value='/ajaxServlet'/>",true);  //设置请求为GET求求 并且与服务器相连接
request.send(null);//设置请求体为null
request.onreadystatechange=function(){//为状态码发生改变注册一个事件
if(request.readyState==4&&request.status)//如果request的状态为4而且返回的是200就代表响应成功和结束了
{
var text=request.responseText;//得到服务器的文本内容
var h1=document.getElementById("h1");//得到h1标签这个对象
h1.innerHTML=text;//向这个标签中写入服务器返回的字符串文本
}
};
 };
  };
  </script>
  <body>
   <button id="btn">点我啊</button>
   <h1 id="h1"></h1>

  </body>

java的servlet的代码如下:

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("成功访问!");
PrintWriter out = response.getWriter();
out.println("You are my destiny!");
out.close();
}




0 0
原创粉丝点击