您当前的位置:首页 > 网站建设 > ajax
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax | jQuery | 小程序 |

AJAX+JSP实现读取XML内容并按排列显示输出的方法示例

51自学网 2022-02-21 10:51:28
  ajax

本文实例讲述了AJAX+JSP实现读取XML内容并按排列显示输出的方法。分享给大家供大家参考,具体如下:

实现功能:点击按扭,显示出JSP页面中通过out.println传过来的xml信息

一、含XML的JSP页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%  response.setContentType("text/xml");  String txt = request.getParameter("username");  out.println("<student><name>张三</name><age>21</age><sex>男</sex></student>"); %>

二、AJAX处理并显示返回页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head>  <title>ajax02</title>  <script type="text/javascript">  /*    ajax 的几个步骤:    1、建立XmlHttpRequest对象    2、设置回调函数    3、使用Open方法建立与服务器的连接    4、向服务器发送数据    5、在回调函数中针对不同响应状态进行处理  */    var xmlHttp;    function createXMLHttpRequest(){  //1建立XmlHttpRequest对象      if(window.ActiveXObject){        try{          alert("Msxml2.XmlHttp.5.0");            xmlHttp = new ActiveXObject("Msxml2.XmlHttp.5.0");        }catch(e){          try{            xmlHttp = new ActiveXObject("Microsoft.XMLHttp");          }catch(e){            alert("Microsoft.XMLHttp");          }        }      }else{        xmlHttp = new XMLHttpRequest();      }    }    function showMes(){   //2设置回调函数      if(xmlHttp.readyState==4){ //数据接收完成并可以使用        if(xmlHttp.status==200){ //http状态OK        //5、在回调函数中针对不同响应状态进行处理        // document.getElementById("sp").innerHTML = xmlHttp.responseText; //服务器的响应内容          var name = xmlHttp.responseXML.getElementsByTagName("name")[0].firstChild.nodeValue;          var age = xmlHttp.responseXML.getElementsByTagName("age")[0].firstChild.nodeValue;          var sex = xmlHttp.responseXML.getElementsByTagName("sex")[0].firstChild.nodeValue;          document.getElementById("spanname").innerHTML = name;          document.getElementById("spanage").innerHTML = age;          document.getElementById("spansex").innerHTML = sex;        }else{          alert("出错:"+xmlHttp.statusText); //HTTP状态码对应的文本        }      }    }    /**    //这是GET方法传送    function getMes(){      createXMLHttpRequest();      var txt = document.getElementById("txt").value;      var url="servlet/AjaxServlet?txt="+txt;      url = encodeURI(url); //转换码后再传输      xmlHttp.open("GET",url,true); //3使用Open方法建立与服务器的连接      xmlHttp.onreadystatechange=showMes;      xmlHttp.send(null); //4向服务器发送数据    }    */    /**    *这是post方法    */    function postMes(){      createXMLHttpRequest();      var txt = document.getElementById("txt").value;    // var url = "servlet/AjaxServlet";      var url = "work02forxml-2.jsp"      var params = "username="+txt;      xmlHttp.open("POST",url,true);      xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");      xmlHttp.send(params);      xmlHttp.onreadystatechange = showMes;    }  </script> </head> <body>  <input type="text" id="txt"/>  <input type="button" value="query" onclick="postMes()" /><br>  <span id="sp"></span>  姓名:<span id="spanname"></span><br>  年龄:<span id="spanage"></span><br>  性别:<span id="spansex"></span> </body></html>

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML
http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat

更多关于ajax相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《JavaScript中ajax操作技巧总结》、《PHP+ajax技巧与应用小结》及《asp.net ajax技巧总结专题

希望本文所述对大家ajax程序设计有所帮助。


下载地址:
关于Ajax异步请求后台数据进行动态分页功能
AJAX+Servlet实现的数据处理显示功能示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。