//创建xmlrequest对象
function getXMLHttpRequestObject(){
try{
xmlRequest = new XMLHttpRequest(); //Firefox ,safari
}catch(e){
//IE
try{
xmlRequest = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlRequest;
}
//发送ajax请求
function sendAjaxRequest(url,callBackMethod){
xmlRequest = getXMLHttpRequestObject();
xmlRequest.onreadystatechange = callBackMethod;
xmlRequest.open("post",url,true);
xmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlRequest.send(url);
return true;
}
//ajax调用函数
function getTotalList1(product){
url = "../sparepart/get.action?product="+product;
if(!sendAjaxRequest(url,dataChange))
return;
}
//状态改变时调用的函数
function dataChange(){
if(xmlRequest.readyState==4){
if(xmlRequest.status==200){
parseXML(xmlRequest.responseXML);//已经可以正常接受数据
}else { //页面不正常
window.alert("您所请求的页面有异常。");
}
}
}
//解析返回的xml
function parseXML(xml){
var infos = xml.getElementsByTagName("info");
for(var i=0;i<infos.length;i++){
var name = infos[i].getElementsByTagName('name')[0].firstChild.data;
var issn = infos[i].getElementsByTagName('issn')[0].firstChild.data;
var id = infos[i].getElementsByTagName('id')[0].firstChild.data;
doAppend(name,issn,id);
}
}
//jsp界面此处注意out变量类型
<%@ page contentType="text/xml; charset=UTF-8" language="java" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="css.sparepart.bean.Info" %>
<%
response.setCharacterEncoding("utf-8");
response.setContentType("text/xml;charset=utf-8");
List list = (ArrayList)request.getAttribute("sanlist");
PrintWriter out1 = response.getWriter();
out1.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
out1.println("<infos>");
for(int i=0;i<list.size();i++){
Info info= (Info)list.get(i);
out1.println("<info>");
out1.println("<name>"+info.getName()+"</name>");
out1.println("<issn>"+info.getIssn()+"</issn>");
out1.println("<id>"+info.getId()+"</id>");
out1.println("</info>");
}
out1.println("</infos>");
%>
相关推荐
然而,实际应用中,XML已经不再是Ajax数据交互的主要格式,JSON(JavaScript Object Notation)因其简洁、易于解析的特性,逐渐成为首选。下面我们将深入探讨Ajax解析XML和JSON的相关知识点。 **一、Ajax基本原理**...
3. **服务器端**:可能是一个简单的Servlet或JSP,接收并处理来自Ajax的请求,然后返回XML或其他格式的数据。 总结,Ajax技术极大地提升了Web应用的交互性和响应速度,通过"ajax_xml运用.doc"文档和"AjaxDemo"项目...
2. XML解析方式: - DOM(Document Object Model)解析:DOM将XML文档转换为一棵节点树,通过JavaScript可以遍历和操作这棵树。例如,使用`new DOMParser().parseFromString(xmlString, 'text/xml')`解析XML字符串...
// 解析并处理 XML 数据的函数 }, error: function(jqXHR, textStatus, errorThrown) { console.log('Error:', textStatus, ', Details:', errorThrown); } }); ``` **3. 解析 XML 数据** 在 `success` 回调...
- 使用Ajax下载文件时,服务器通常会将文件内容以XML格式返回,然后在客户端解析并触发下载。 - 通过创建隐藏的iframe或者利用Blob和URL.createObjectURL() API可以实现文件的下载。 5. **示例代码**: ```...
2. **解析XML响应**:当服务器返回XML数据时,我们可以使用DOM方法来解析和操作数据。 ```javascript var responseXML = xhr.responseXML; var rootElement = responseXML.documentElement; var childNodes = root...
`HjxxServlet.java`通常是Java Web应用程序中的一个Servlet,负责处理HTTP请求并返回XML响应。Servlet是运行在服务器端的小程序,它可以接收和响应来自客户端的请求,这里的请求可能是由Ajax发起的。 在`index....
5. 解析XML响应:当请求成功并返回XML数据时,我们需要解析XML内容。JavaScript提供了DOMParser对象来实现这一点。 ```javascript var parser = new DOMParser(); var xmlDoc = parser.parseFromString(xhr....
// 解析并处理XML数据 } }; xhr.send(); ``` 在这个例子中,`onreadystatechange`事件处理函数会在状态改变时被调用,当`readyState`为4且`status`为200表示请求成功,此时可以访问到`responseXML`属性,它包含了...
在IT行业中,jQuery(简称JQ...总之,jQuery的`ajax`函数结合适当的XML解析技巧,使得在Web应用中处理XML数据变得简单易行。无论是数据的获取还是后续的处理,都可以通过一行行简洁的代码完成,极大地提高了开发效率。
当使用Ajax发送请求时,服务器端可以返回XML数据,客户端的JavaScript代码通过DOM(Document Object Model)解析XML并更新HTML元素。例如,以下是一个简单的Ajax请求XML数据的例子: ```javascript var xhr = new ...
// 解析并操作XML数据 var nodes = xmlDoc.getElementsByTagName("nodeName"); for (var i = 0; i ; i++) { console.log(nodes[i].childNodes[0].nodeValue); } } }; xhr.open('GET', 'yourfile.xml', true); ...
然而,由于XML解析和生成较复杂,现在更多地使用JSON(JavaScript Object Notation),因为JSON更轻量级,易于读写,并且可以直接被JavaScript解析。 ### 3. PHP 在Ajax中的作用 PHP是一种服务器端脚本语言,常...
服务器根据这个ID从XML文件中提取对应城市的列表,然后返回XML或JSON格式的数据。 4. **Ajax请求**:使用`XMLHttpRequest`对象或者jQuery的`$.ajax()`方法发送异步请求。设置请求类型GET或POST,URL指向服务器端的...
本篇将详细解释如何使用JQuery实现AJAX加载XML并进行解析。 首先,我们要理解XML(可扩展标记语言)是一种用于存储和传输数据的标准格式,它的结构清晰,易于解析。然而,为了正确地处理XML,我们需要确保服务器...
**在实际应用中,出于性能和易用性的考虑,JSON(JavaScript Object Notation)已经逐渐取代了XML作为Ajax数据交换格式,因为JSON更轻量级且更易于解析。然而,理解基于XML的Ajax对于深入理解Ajax的工作原理和历史...
响应数据再由AJAX回调函数接收,解析XML,并更新网页的特定部分,从而实现无刷新的效果。 具体步骤可能包括以下阶段: 1. **前端(客户端)**:使用JavaScript编写AJAX函数,监听用户事件,如点击按钮。当事件触发...
- **处理响应**:服务器返回XML数据,JavaScript解析XML,提取对应省份下的所有城市信息。 - **更新DOM**:将城市信息填充到城市下拉框,清除区县下拉框选项,同时设置一个默认值或空选项。 - **继续监听**:继续...
在Web开发领域,Ajax(Asynchronous JavaScript and XML)是一种创建动态网页的技术,它允许在不刷新整个页面的情况下,与服务器交换数据并更新部分网页内容。DWR(Direct Web Remoting)是一个开源Java库,它使得...