/**
*
* @author liang
*需求:通过点击button按钮,向服务器以get方式发送数据,同时将服务器返回的数据显示到span的标签内
*/
1:jsp页面:
<body> <div> <input type="button" id="btn" value="点击一下"/><br/> <span id="inner"></span> </div> </body>
2:js代码:
//共分四步:尽管前边有大概复习一下
//1:得到xmlHttpRequest 对象
//2:打开与服务器的连接
//3:发送内容
//4:从服务器端得到响应消息
function createXmlHttpRequest(){ var xmlHttpRequest ;//声明一个xmlHttpRequest对象 try{ //大多数浏览器都支持的创建xmlHttpRequest 对象的方式 xmlHttpRequest = new XMLHttpRequest(); }catch(e){ try{ //==>> IE6.0版本下的创建XMLHttpRequest的方式 xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ try{ //==>> IE5.0及以下创建XMLHttpRequest 对象的方式 xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP"); }catch(e){ throw e; } } } return xmlHttpRequest; } window.onload = function(){//文档一开始就执行 var btn = document.getElementById("btn");//得到btn对象 btn.onclick = function(){//在btn上绑定click对象,注意这里的onclick都是小写,我当时写的时候把c字母写成大写了 var xmlHttp = createXmlHttpRequest();//得到xmlHttpRequest 对象 xmlHttp.open("GET","AjaxDemo",true);//get方式请求open("请求的方式","请求的uri","是否设置成异步的方式") xmlHttp.send(null); xmlHttp.onreadystatechange = function(){ if(xmlHttp.readyState == 4 && xmlHttp.status == 200){ var text = xmlHttp.responseText;//得到从服务器传送回来的数据 var inner = document.getElementById("inner").innerHTML = text;//写入到span中 } }; }; }; </script>
Server端的代码比较简单:
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException { // TODO Auto-generated method stub response.getWriter().println("Hello AJAX!!!");//通过response对象将"Hello AJAX!!! 写回到jsp页面" response.getWriter().flush();//刷新一下 response.getWriter().close();//关闭writer对象
}
注意web.xml文件
<servlet> <description></description> <display-name>AjaxDemo</display-name>//这里配置的便是访问servelt的Uri <servlet-name>AjaxDemo</servlet-name> <servlet-class>AjaxDemo2.AjaxDemo</servlet-class> </servlet> <servlet-mapping> <servlet-name>AjaxDemo</servlet-name> <url-pattern>/AjaxDemo</url-pattern> </servlet-mapping> (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|