当前位置: 首页 > 面试题库 >

在AJAX中解析xml响应的最佳方法是什么

锺离浩慨
2023-03-14
问题内容

我有一个使用XML响应请求的服务器,我想在javascript中解析它。我真的很喜欢ActionScript
XML解析器,它对我来说很容易使用。我在徘徊是否有一种非常简单/直接的方法来解析我从服务器获取的XML?

理想的用法应该是:

fetchXML新的XMLParser。parser.parse访问文档。

顺便说一句,我计划使用jQuery。


问题答案:

一个普通的$.ajaxwith dataType: "xml"会解决这个问题,然后您可以像使用简单的网页一样使用jQuery选择器浏览内容(例如attr,示例中的函数以检索每个书节点的“
code”字段或该find函数以查找特定的节点类型) )。

例如,您可以执行以下操作以按标题查找特定的书:

$(xml).find("book[title="Cinderella"]")

处理程序从那里接收xml的数据在哪里?success``$.ajax

这是完整的示例:

<!DOCTYPE html>
<html>
<head>
 <title>jQuery and XML</title>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name="language" content="en" />
 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head>
<body

<div id="output"></div>

<script type="text/javascript">
$(document).ready(function(){
 $.ajax({
  type: "GET",
  dataType: "xml",
  url: "example.xml",
  success: function(xml){
   $(xml).find("book").each(function(){
    $("#output").append($(this).attr("code") + "<br />");
   });
  }
 });
});
</script>


</body>
</html>

以及一个匹配的XML文件:

<?xml version="1.0" encoding="UTF-8"?> 
<books title="A list of books">
 <book code="abcdef" />
 <book code="ghijklm">
  Some text contents
 </book>
</books>


 类似资料:
  • 问题内容: 在PHP中推荐使用哪些XML库?优点?寻找创建/发送/解析XML。需要支持高流量(每天数百万次通话) 问题答案: PHP支持许多XML库。 如果由于大文件等原因导致内存问题,请使用基于事件的解析器而不是基于树的解析器。基于树的解析器必须将文件完全加载到内存中才能解析XML。基于事件的解析器不需要将整个文件加载到内存中就可以开始解析。 看到这篇文章关于 什么是新的XML在PHP5和其利弊

  • 问题内容: 我正在使用python 模块将RESTful GET发送到服务器,对此我得到了JSON响应。JSON响应基本上只是列表的列表。 强制对本地Python对象进行响应的最佳方法是什么,以便我可以使用进行迭代或打印出来? 问题答案: 您可以使用: 这会将给定的字符串转换成字典,使您可以在代码中轻松访问JSON数据。 或者,您可以使用@Martijn的有用建议以及投票较高的答案。

  • 我正在使用python模块向服务器发送RESTful GET,并在JSON中得到响应。JSON响应基本上只是一个列表的列表。 将响应强制到本机Python对象的最佳方法是什么,以便使用迭代或打印它?

  • 问题内容: 我正在寻找一种库/方法来解析比通用xml解析库具有更多html特定功能的html文件。 问题答案: 这是一个敏捷的HTML解析器,它构建了一个读/写DOM并支持纯XPATH或XSLT(您实际上不必了解XPATH或XSLT来使用它,不用担心…)。这是一个.NET代码库,可让您解析“网络外” HTML文件。该解析器对“真实世界”格式的HTML十分宽容。对象模型与提出System.Xml的对

  • 问题内容: 我正在使用python requests模块将RESTful GET发送到服务器,对此我得到了JSON响应。JSON响应基本上只是列表的列表。 强制对本地Python对象进行响应的最佳方法是什么,以便我可以使用进行迭代或打印出来? 问题答案: 你可以使用: 这会将给定的字符串转换成字典,使你可以在代码中轻松访问JSON数据。

  • 问题内容: 我正在使用解析Java中的字符串。但是,没有直接解析字符串的函数,所以我改为这样做: 这是最好的方法吗?我觉得必须有一个更简单的方法…谢谢! 问题答案: 直接回答您的问题-据我所知,没有更好的方法。使用输入源是因为它比较通用,可以处理来自文件,字符串或跨线的输入,这是我的理解。 您还可以尝试使用SAX Xml解析器- 它稍微有点基础,并且使用了Visitor模式,但是可以完成工作,对于