2012-08-10 85 views
-1

我想创建一个XML解析器在JavaScript与jQuery和收到一个XML文件的一些信息加上任何数量的其他XML文件的链接。解析器运行时,可以找到例如3个带有其他XML文件链接的标签。这些将开始逐个处理和打印,直到所有链接都发布在页面上。这意味着底层XML文件将在解析第一个xml文件时递归地打印出来。所有的xml文件都具有相同的结构,并且底层可能也有链接,就像第一个xml文件一样。与jQuery的多个AJAX XML请求

是否有可能以这种方式递归回顾和处理相互链接的XML文件,如果是这样的话?

+3

我的问题绝不是普通的问题... – OptimusCrime 2012-08-10 12:42:37

+0

jQuery的有n卓越的xml解析器,只需执行'$('your xml')'并完成。为什么需要重写? – 2012-08-10 12:44:22

+0

@TrinhHoangNhu你必须小心$('你的xml'),因为有时它不能在IE中工作(需要$(document.createElement('root和其他标签')) - ing),因为jQuery不会'用dom自动注册元素,IE认为标签没有关闭。 – 2012-08-10 12:51:49

回答

1

您可以使用跨浏览器xml解析库(如Sarissa)来处理为每个浏览器设置DOM解析器。然后,当你找到另一种XML链接一个节点,你可以叫你的函数应该做到以下几点:

  1. 检索XML文档
  2. 设置DOM解析器
  3. 解析文件
  4. 如果链接发现再次调用这个函数(递归)
  5. 如果EOF停止(停止条件)