1.AJAX:客户端(服务器返回的是XML数据格式)

2023-11-12 02:32

本文主要是介绍1.AJAX:客户端(服务器返回的是XML数据格式),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/** <?xml version="1.0" encoding="UTF-8"?> <items> <item> <id>10003</id> <name>保定</name> </item> <item> <id>10004</id> <name>天津</name> </item> </items> 
*/ // XMLHttpRequest对象
var xmlHttpRequest;/***	大区select的option发生变化时调用此函数,把大区对应的城市查出来,放在城市select的option中*  这个方法将使用XMLHttpRequest对象来进行AJAX的异步数据交互*/
function getCities(field) {// 获取大区select的option的valuevar regionValue = field.value;// 创建XMLHttpRequest对象,需要针对IE和其他类型的浏览器建立这个对象的不同方式写不同的代码// 针对FireFox,Mozillar,Opera,Safari,IE7,IE8if (window.XMLHttpRequest) {xmlHttpRequest = new XMLHttpRequest();//	针对某些特定版本的mozillar浏览器的BUG进行修正if (xmlHttpRequest.overrideMimeType) {xmlHttpRequest.overrideMimeType("text/xml");}// 针对IE6,IE5.5,IE5} else if (window.ActiveXObject) {// 两个可以用于创建XMLHttpRequest对象的控件名称,保存在一个js的数组中,排在前面的版本较新var activeXName = [ "MSXML2.XMLHTTP", "Microsoft.XMLHTTP" ];for ( var int = 0; int < activeXName.length; int++) {try {// 取出一个控件名进行创建,如果创建成功就终止循环,如果创建失败,回抛出异常,然后可以继续循环,继续尝试创建xmlHttpRequest = new ActiveXObject(activeXName[int]);break;} catch (e) {}}}// 确认XMLHTtpRequest对象创建成功if (!xmlHttpRequest) {window.alert("XMLHttpRequest对象创建失败!");return false;}// 注册回调函数,需要函数名,不要加括号xmlHttpRequest.onreadystatechange = callback;// 设置连接信息// 第一个参数表示http的请求方式,支持所有http的请求方式,主要使用get和post// 第二个参数表示请求的url地址,get方式请求的参数也在url中// 第三个参数表示采用异步还是同步方式交互,true表示异步xmlHttpRequest.open("GET", "../servlet/StatReportServlet?command=${getCity}®ionId=" + regionValue + "&date=" + new Date(), true);// 发送数据,客户端设置信息发送给AJAX引擎xmlHttpRequest.send(null);
}/*** 回调函数*/
function callback() {// 接收响应数据,AJAX引擎跟服务器交互完成if (xmlHttpRequest.readyState == 4) {// AJAX引擎跟服务器交互成功if (xmlHttpRequest.status == 200) {// 服务器(servlet)返回的是XML数据var domObj = xmlHttpRequest.responseXML;// 正确返回XML数据对象if (domObj) {// 获取节点item(数组)var itemElement = domObj.getElementsByTagName("item");// 节点item长度大于0才是正常情况if (itemElement.length > 0) {// 获取城市selectvar citySelect = window.document.getElementById("province");// 往城市select添加option之前先清空之前的optioncitySelect.options.length = 0;// 添加默认的option(全部)var allOption = new Option("--全部--", 0);citySelect.add(allOption);// 遍历节点item,取出子节点id和name的内容,设置在城市select的option中for ( var int = 0; int < itemElement.length; int++) {var id = itemElement[int].childNodes[0].firstChild.nodeValue;var name = itemElement[int].childNodes[1].firstChild.nodeValue;// 根据name,id创建新的optionvar nameIdOption = new Option(name, id);citySelect.add(nameIdOption);							}} else {window.alert("XML数据格式错误,原始的文本内容是 " + xmlHttpRequest.responseText);}} else {window.alert("XML数据格式错误,原始的文本内容是 " + xmlHttpRequest.responseText);}// AJAX引擎跟服务器交互失败	} else {window.alert("AJAX引擎跟服务器交互失败");}}
}


这篇关于1.AJAX:客户端(服务器返回的是XML数据格式)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/394483

相关文章

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

MYSQL查询结果实现发送给客户端

《MYSQL查询结果实现发送给客户端》:本文主要介绍MYSQL查询结果实现发送给客户端方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql取数据和发数据的流程(边读边发)Sending to clientSending DataLRU(Least Rec

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

mybatis的mapper对应的xml写法及配置详解

《mybatis的mapper对应的xml写法及配置详解》这篇文章给大家介绍mybatis的mapper对应的xml写法及配置详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录前置mapper 对应 XML 基础配置mapper 对应 xml 复杂配置Mapper 中的相

C#使用MQTTnet实现服务端与客户端的通讯的示例

《C#使用MQTTnet实现服务端与客户端的通讯的示例》本文主要介绍了C#使用MQTTnet实现服务端与客户端的通讯的示例,包括协议特性、连接管理、QoS机制和安全策略,具有一定的参考价值,感兴趣的可... 目录一、MQTT 协议简介二、MQTT 协议核心特性三、MQTTNET 库的核心功能四、服务端(BR

java中XML的使用全过程

《java中XML的使用全过程》:本文主要介绍java中XML的使用全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录什么是XML特点XML作用XML的编写语法基本语法特殊字符编写约束XML的书写格式DTD文档schema文档解析XML的方法​​DOM解析XM

SpringBoot快速搭建TCP服务端和客户端全过程

《SpringBoot快速搭建TCP服务端和客户端全过程》:本文主要介绍SpringBoot快速搭建TCP服务端和客户端全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录TCPServerTCPClient总结由于工作需要,研究了SpringBoot搭建TCP通信的过程

浅析如何使用xstream实现javaBean与xml互转

《浅析如何使用xstream实现javaBean与xml互转》XStream是一个用于将Java对象与XML之间进行转换的库,它非常简单易用,下面将详细介绍如何使用XStream实现JavaBean与... 目录1. 引入依赖2. 定义 JavaBean3. JavaBean 转 XML4. XML 转 J

SpringMVC 通过ajax 前后端数据交互的实现方法

《SpringMVC通过ajax前后端数据交互的实现方法》:本文主要介绍SpringMVC通过ajax前后端数据交互的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价... 在前端的开发过程中,经常在html页面通过AJAX进行前后端数据的交互,SpringMVC的controll

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.