用jquery读取xml

时间:2013-04-22 15:34:01

标签: javascript jquery xml parsing

我很抱歉提出与此主题有关的问题,因为似乎有很多很多主题与同一主题有关。我已经阅读了相当多的内容,但我无法找到代码中的问题。我有一个XML文件,我试图只读取每个属性的子节点(如果这是正确的术语?)。

XML:

<movement>
    <name>Squat</name>
    <set>
        <weight>270</weight>
        <reps>5</reps>
    </set>
</movement>

我的代码只是试图读取每个动作的名称属性。

javascript:

    $(document).ready(function()
{
    $.ajax({
        type: "GET",
        url: "/training.xml",
        dataType: "xml",
        success: parseXml
    });
});
function parseXml(xml)
{
    $(xml).find("movement").each(function()
    {
        $("#training").append($(this).find("name").text() + "<br>");
    });
}

我通过在线教程找到了这个,并尝试修改它只是为了将每个动作的名称添加到页面上的div。目前它没有显示任何内容。我看不出这个问题。任何帮助将不胜感激。

完整的XML文件:pastebin.com/rthMWNhm

完整的HTML文件:pastebin.com/6m9rBjRn

1 个答案:

答案 0 :(得分:-1)

这应该可以解决问题。问题是您已经在移动节点。仅查找儿童搜索。每次迭代都将迭代每个运动元素。

<强> Demo

<强>的Javascript

var parseXml = function(xml){
    var names = '';
    $(xml).find('movement name').each(function(i,name){
        names += name.innerHTML  +'<br>';
    });  
    $('#training').append(names);
};


parseXml(xml);

更新了适合新版xml的答案