解析在树的不同级别具有相同元素名称的xml

时间:2011-05-18 00:55:14

标签: jquery xml

我正在解决如何解析一些具有重复结构并具有大量重复变量名称的xml的麻烦。

我试图解析的xml看起来像这样:

<pages>
  <page id=413419>
  <title>page 1</title>
  <subpages>
    <page id=119>
      <title>page 1.1</title>
      <subpages>
        <page id=13851>
          <title>page 1.1.1</title>
        </page>
        <page id=1551>
          <title>page 1.1.2</title>
        </page>
      </subpages>
    </page>
    <page id=41415>
      <title>page 1.2</title>
      <subpages>
        <page id=0928>
          <title>page 1.2.1</title>
        </page>
        <page id=155661>
          <title>page 1.2.2</title>
        </page>
      </subpages>
    </page>
  </subpages>
 </page>
</pages>

我的问题是使用类似$(data).find("page")的内容会获取所有页面并忽略层次结构。如何在遵循xml的结构的同时解析这封电子邮件?

2 个答案:

答案 0 :(得分:1)

使用.children()而不是.find:

$(data).children('page')

将直接返回所有页面元素 在顶级元素下。

答案 1 :(得分:0)

这一切都取决于你想用它做什么(以及你准备使用什么技术)。这是一种XSLT真正发挥作用的XML结构。