JQuery XML解析同一元素的多级

JQuery XML解析同一元素的多级,jquery,xml,parsing,multi-level,Jquery,Xml,Parsing,Multi Level,这是我在这里的第一个问题,我对web开发世界还很陌生。我有一个简单的问题,所以我不想用我所有的代码来烦你,我将给你一个简单的例子: 我有一个类似这样的XML,我们称之为“example.XML”: parseXml将如下所示: function parseXml(xml){ var result = new Object() $(xml).find('a').each(function(){ result.b = $(this).find('b:first').te

这是我在这里的第一个问题,我对web开发世界还很陌生。我有一个简单的问题,所以我不想用我所有的代码来烦你,我将给你一个简单的例子:

我有一个类似这样的XML,我们称之为“example.XML”:

parseXml将如下所示:

function parseXml(xml){
    var result = new Object()
    $(xml).find('a').each(function(){
       result.b = $(this).find('b:first').text()
       result.c = $(this).find('c:first').text()
    }
}
所以我这里的问题是,这个JQuery将在第一级“a”中找到一个“c”,即使没有。我认为它会在第二个“a”内搜索以找到一个“c”。这就是为什么我需要在find()函数中添加“:first:”,这样它就不会返回第二个“b”。。。我认为这不是最好的办法,因为如果在第二级“a”之后宣布“b”,我就会得到第二级“b”。。。我不知道你是否在跟踪,但我的问题是:

  • 这是一个提议者XML文件吗
  • 如果不是,假设我不能改变它,我怎么能得到一个不会从第二层获取信息的propoperXML解析器呢
  • 非常感谢你的帮助

    Try只能用于在直接子对象中搜索

    function parseXml(xml){
        var result = new Object()
        $(xml).find('a').each(function(){
           result.b = $(this).children('b').text()
           result.c = $(this).children('c').text()
        }
    }
    
    将在所有级别中搜索子体

    获取当前匹配元素集中每个元素的后代 元素,由选择器、jQuery对象或元素过滤

    function parseXml(xml){
        var result = new Object()
        $(xml).find('a').each(function(){
           result.b = $(this).find('b:first').text()
           result.c = $(this).find('c:first').text()
        }
    }
    
    function parseXml(xml){
        var result = new Object()
        $(xml).find('a').each(function(){
           result.b = $(this).children('b').text()
           result.c = $(this).children('c').text()
        }
    }