通过搜索子元素的值可以找到xml元素吗?

因此对于XML如:

<route>
    <name>Lakeway</name>
    <abrv>LAKE</abrv>
    <eta>
        <time>00:30</time>
        <dest>MAIN</dest>
    </eta>
</route>


如果我只有abrv的值,我将如何解析xml以便获得eta标签的子元素?

使用jQuery无需遍历每个元素并将值与定义的变量进行比较就可以做到吗?还是有更好的方法来做到这一点?

编辑:

我正在尝试从另一个域解析XML提要。我不确定是否可以使用xmlParse函数来做到这一点,或者是否需要使用jQuery的Ajax函数?

最佳答案

也许是这样的:

var xmlString = "<route><name>Lakeway</name><abrv>LAKE</abrv><eta><time>00:30</time><dest>MAIN</dest></eta></route>",
xmlDoc = $.parseXML( xmlString ),
$xml = $( xmlDoc ),
$abrv = $xml.find( "abrv" ).text() == "LAKE" ? $xml.find( "abrv" ) : false;

var time = $abrv.next().children("time").text();
var dest = $abrv.next().children("dest").text();

alert(time + " " + dest);


http://jsfiddle.net/jensbits/UH2m5/

希望这可以帮助您入门。

09-28 06:02