首页 跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分)

跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分)

举报
开通vip

跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分)跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分) 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 1.1 跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应 用示例(第三部分) 1.1.1 对前面的XML响应加以改进以表格的形式显示输出 1、在页面中增加一个parseXMLResponseInTable的JavaScript方法 function parseXMLResponseInTable() { var dataArray = htt...

跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分)
跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分) 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 1.1 跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应 用示例(第三部分) 1.1.1 对前面的XML响应加以改进以 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 的形式显示输出 1、在页面中增加一个parseXMLResponseInTable的JavaScript方法 function parseXMLResponseInTable() { var dataArray = httpRequest.responseXML.getElementsByTagName("data"); // var dataArrayLen = dataArray.length; var insertData = ""+ ""; for (var i=0; i"; insertData =insertData+""; insertData =insertData+""; insertData =insertData+""; } } insertData =insertData+"
XML的处理结果
" + dataArray[i].tagName + "" + dataArray[i].firstChild.data + "
"; //使用HTML标签来更新一个标签元素 mdiv = document.getElementById("showResultMessage"); mdiv.innerHTML = insertData; } 对上面的代码进行说明: (1)"dataArray"作为所有节点的数组(不是节点数据,只是节点)。"dataArrayLen"是这个数组的长度,用于我们的循环。"insertData"则是一个表格的开头的HTML。 1 杨教授工作室,版权所有,盗版必究, 1/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 (2)我们的第二步则是遍历所有的元素(通过变量"dataArray")并将数据添加到变量insertData中。这里我们会创建一个表格行,插入一个表格数据节点(td)进去,再将每一个元素的文本包含进这个表格数据节点,并将这些都添加进变量"insertData"。因此,每循环一次,变量insertData将添加一行包含元素名称和内容的新数据。 )新数据行添加完后,我们插入一个""结束标签到变量"insertData"。这完成了这(3 个表格。 (4)最后一步需要我们将这个表格放到页面上------这很简单,我们通过函数document.getElementById()取得DIV "userIdMessage "并将变量"insertData"中的HTML插进去。 2、修改processHttpResponse方法以对上面的方法进行调用 function processHttpResponse () { if (httpRequest.readyState == 4) { if (httpRequest.status == 200) { //检查是否成功接收了服务器响应 //parseXMLResponseInText(); parseXMLResponseInTable(); } else if(httpRequest.status == 404) { alert("没有找到与所请求的文件相匹配的资源~"); } else { alert("你所请求的页面发生异常,错误代码为: "+httpRequest.status); } } 2 杨教授工作室,版权所有,盗版必究, 2/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 else { document.getElementById("userIdMessage").innerHTML = "检测中,请稍等..."; } } 3、再执行本页面将出现下面的表格显示的结果 :8080/StrutsAJAXWebApp/index.jsp 因为我们在服务器端的Action类程序中的输出实际为下面的形式,其中的“XXX”为我们所获得的用户提交的值。 XXX XXX 1.1.2 将服务器端返回的XML文档中的标签改变为更一般的形式 1、如果我们要求在服务器端实际返回的XML响应的结果为下面的格式------两个不同的子标签 XXX XXX 其中的“XXX”为我们所获得的用户提交的值。 3 杨教授工作室,版权所有,盗版必究, 3/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 2、则应该怎么实现呢, (1)修改服务器端CreateXMLBean类中的createXMLText方法为下面的代码 public String createXMLText(String inputCityName) { StringBuffer oneStringBuffer=new StringBuffer(""); oneStringBuffer.append(""+inputCityName+""); oneStringBuffer.append(""+inputCityName+""); oneStringBuffer.append(""); return oneStringBuffer.toString(); } (2)修改webajax.js中的parseXMLResponseInTable 方法为下面的 parseXMLResponseInTableTwo方法 function parseXMLResponseInTableTwo() { var dataArray = httpRequest.responseXML.getElementsByTagName("message")[0].childNodes; var dataArrayLen = dataArray.length; var insertData = ""+ ""; for (var i=0; i"; insertData =insertData+""; insertData =insertData+""; insertData =insertData+""; } } 4 杨教授工作室,版权所有,盗版必究, 4/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 insertData =insertData+"
XML的处理结果
" + dataArray[i].tagName + "" + dataArray[i].firstChild.data + "
"; //使用HTML标签来更新一个标签元素 mdiv = document.getElementById("showResultMessage"); mdiv.innerHTML = insertData; } (3)修改processHttpResponse 方法为下面的 function processHttpResponse () { if (httpRequest.readyState == 4) { if (httpRequest.status == 200) { //检查是否成功接收了服务器响应 // parseXMLResponseInText(); // parseXMLResponseInTable(); parseXMLResponseInTableTwo(); } else if(httpRequest.status == 404) { alert("没有找到与所请求的文件相匹配的资源~"); } else { alert("你所请求的页面发生异常,错误代码为:"+httpRequest.status); } } else { document.getElementById("showResultMessage").innerHTML = "检测中,请稍等..."; } } 5 杨教授工作室,版权所有,盗版必究, 5/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 (4)再执行本页面:8080/StrutsAJAXWebApp/index.jsp 3、如果我们要求在服务器端实际返回的XML响应的结果为下面的格式 XXX XXX 其中的“XXX”为我们所获得的用户提交的值。 则应该怎么实现呢, (1)修改服务器端CreateXMLBean类中的createXMLText方法为下面的代码 public String createXMLText(String inputCityName) { StringBuffer oneStringBuffer=new StringBuffer(""); oneStringBuffer.append(""+ inputCityName+""); oneStringBuffer.append(""+ inputCityName+""); oneStringBuffer.append(""); return oneStringBuffer.toString(); } (2)修改webajax.js中的parseXMLResponseInTableTwo方法为下面的 parseXMLResponseInTableThree方法 function parseXMLResponseInTableThree() 6 杨教授工作室,版权所有,盗版必究, 6/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 { var dataArray = httpRequest.responseXML.getElementsByTagName("message")[0].childNodes; var dataArrayLen = dataArray.length; var insertData = ""+ ""; for (var i=0; i"; insertData =insertData+""; insertData =insertData+""; insertData =insertData+""; insertData =insertData+""; } } insertData =insertData+"
XML的处理结果
" + dataArray[i].tagName + "" + dataArray[i].firstChild.data + "" + dataArray[i].getAttribute("attributeName")+ "
"; //使用HTML标签来更新一个标签元素 mdiv = document.getElementById("showResultMessage"); mdiv.innerHTML = insertData; } (3)修改processHttpResponse 方法为下面的 function processHttpResponse (){ if (httpRequest.readyState == 4) { if (httpRequest.status == 200) { //检查是否成功接收了服务器响应 // parseXMLResponseInText(); // parseXMLResponseInTable(); // parseXMLResponseInTableTwo(); 7 杨教授工作室,版权所有,盗版必究, 7/9页 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 parseXMLResponseInTableThree(); } else if(httpRequest.status == 404) { alert("没有找到与所请求的文件相匹配的资源~"); } else { alert("你所请求的页面发生异常,错误代码为:"+httpRequest.status); } } else { document.getElementById("showResultMessage").innerHTML = "检测中,请稍等..."; } } (4)再执行本页面:8080/StrutsAJAXWebApp/index.jsp 4、利用CSS对我们前面的表格美化一下 然后再执行本页面:8080/StrutsAJAXWebApp/index.jsp 9 杨教授工作室,版权所有,盗版必究, 9/9页
本文档为【跟我学AJAX技术——如何应用AJAX实现无刷新查询功能的Web应用示例(第三部分)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_219945
暂无简介~
格式:doc
大小:107KB
软件:Word
页数:0
分类:
上传时间:2018-10-13
浏览量:3