XML DOM 解析器

server/2025/2/3 22:07:00/

大多数浏览器都内建了供读取和操作 XML 的 XML 解析器。

解析器把 XML 转换为 JavaScript 可存取的对象(XML DOM)。


XML 解析器

XML DOM 包含了遍历 XML 树,访问、插入及删除节点的方法(函数)。

然而,在访问和操作 XML 文档之前,它必须加载到 XML DOM 对象。

XML 解析器读取 XML,并把它转换为 XML DOM 对象,这样才可以使用 JavaScript 访问它。

大多数浏览器有一个内建的 XML 解析器。


加载 XML 文档

下面的 JavaScript 片段加载一个 XML 文档("books.xml"):

实例

if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码 xhttp=new XMLHttpRequest(); } else { // IE6, IE5 浏览器执行代码 xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET","books.xml",false); xhttp.send(); xmlDoc=xhttp.responseXML;


尝试一下 »

代码解释:

  • 创建一个 XMLHTTP 对象
  • 打开 XMLHTTP 对象
  • 发送一个 XML HTTP 请求到服务器
  • 设置响应为 XML DOM 对象

加载 XML 字符串

下面的代码加载并解析一个 XML 字符串:

实例

if (window.DOMParser) { parser=new DOMParser(); xmlDoc=parser.parseFromString(text,"text/xml"); } else { // Internet Explorer xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.loadXML(text); }


尝试一下 »

注意:Internet Explorer 使用 loadXML() 方法来解析 XML 字符串,而其他浏览器使用 DOMParser 对象。


跨域访问

出于安全原因,现代的浏览器不允许跨域访问。

这意味着,网页以及 XML 文件,它必须位于同一台服务器上尝试加载。

菜鸟教程上的实例中所有打开的 XML 文件都是位于菜鸟教程域上的。

如果您想要在您的网页上使用上面的实例,您加载的 XML 文件必须位于您自己的服务器上。


http://www.ppmy.cn/server/164722.html

相关文章

LeetCode题练习与总结:在系统中查找重复文件--609

一、题目描述 给你一个目录信息列表 paths ,包括目录路径,以及该目录中的所有文件及其内容,请你按路径返回文件系统中的所有重复文件。答案可按 任意顺序 返回。 一组重复的文件至少包括 两个 具有完全相同内容的文件。 输入 列表中的单个…

20250128 大语言模型(Large Language Model, LLM)已成为自然语言处理(NLP)领域的重要突破

大语言模型分析报告 一、引言 随着人工智能技术的不断进步,大语言模型(Large Language Model, LLM)已成为自然语言处理(NLP)领域的重要突破。这些模型通过大规模语料数据的预训练,具备理解和生成人类语言…

JS面相对象小案例:自定义安全数组

在JS中,数组不像其他语言(java、python)中那样安全,它具有动态性和弱类型性,切越界访问没有具体的报错,而是返回空,为提升数组的安全性,我们可以自行定义一个安全数组。 一、增加报…

【Leetcode刷题记录】45. 跳跃游戏 II--贪心算法

45. 跳跃游戏 II 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向后跳转的最大长度。换句话说&#xff0c;如果你在 nums[i] 处&#xff0c;你可以跳转到任意 nums[i j] 处: 0 < j < nums[i]i j < n 返回到达 num…

Spring Boot基本项目结构

要写一个Spring Boot 项目对于新手小白来说&#xff0c;首先要了解Spring Boot 的基本架构&#xff0c;学会如何创建一个简单的spring boot项目。 springboot 基于maven做的&#xff08;前提保证maven是装好并且IDEA配置好的&#xff09;&#xff08;面向接口编程&#xff09;…

C# 操作符重载对象详解

.NET学习资料 .NET学习资料 .NET学习资料 一、操作符重载的概念 在 C# 中&#xff0c;操作符重载允许我们为自定义的类或结构体定义操作符的行为。通常&#xff0c;我们熟悉的操作符&#xff0c;如加法&#xff08;&#xff09;、减法&#xff08;-&#xff09;、乘法&#…

PHP实现混合加密方式,提高加密的安全性(代码解密)

代码1&#xff1a; <?php // 需要加密的内容 $plaintext 授权服务器拒绝连接;// 1. AES加密部分 $aesKey openssl_random_pseudo_bytes(32); // 生成256位AES密钥 $iv openssl_random_pseudo_bytes(16); // 生成128位IV// AES加密&#xff08;CBC模式&#xff09…

【信息系统项目管理师-选择真题】2009下半年综合知识答案和详解

更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 【第1~2题】【第3题】【第4题】【第5题】【第6题】【第7题】【第8题】【第9题】【第10题】【第11题】【第12题】【第13题】【第14题】【第15题】【第16题】【第17题】【第18题】【第19题】【第20题】【第21题】…