javascript - 如何使用 javascript 或 jQuery 访问 xml 中的子子属性?

标签 javascript xml html parent-child

我是代码开发新手,我正在尝试构建一个项目来帮助我保留所学的技能。在这样做的过程中,我遇到了障碍。

我试图从 XML 文件中的节点中提取一些属性,但无法获取我需要的属性。我需要能够从节点父节点中提取“编号”以及节点中列出的每个团队的团队“代码”。团队数量在 2 到 6 之间波动。 Here's a sample of the XML.

我的代码如下。当它运行时,它将获取再见周数据,但不会加载团队。我读过的几篇文章也有类似的问题,但有一些其他技术或数据结构不适用于我在这里使用的内容(据我所知)。任何帮助将不胜感激。

    <!DOCTYPE html>
<html>
    <head>
        <title>Bye Week</title>
        <script>
            var xmlhttp;

            window.onload = function()
            {
                 var url = "https://www.fantasyfootballnerd.com/service/byes/xml/test/";
                 xmlhttp = new XMLHttpRequest();
                 xmlhttp.open("GET", url, true);
                 xmlhttp.onreadystatechange = byeWeeks;
                 xmlhttp.send();
            }

            function byeWeeks()
            {
                if(xmlhttp.readyState==4 && xmlhttp.status==200)
                {
                    var theXML = xmlhttp.responseXML.documentElement.getElementsByTagName('Week');
                    for(var i = 0; i < theXML.length; i++)
                    {
                        var week = theXML[i].getAttribute('number');
                        var team = theXML[i].getElementsByTagName('Team');


                        var out = "<b>" + team + "</b><br/>";
                        out += "Bye Week: " + week + "<br/>";


                        console.group('Output for ' + team);
                        console.log('Bye Week: ' + week);
                        console.log();
                        console.groupEnd();

                        document.getElementById('result').innerHTML += out
                    }
                }
            }
        </script>

    </head>
    <body>
        <div id="result"></div>
    </body>
</html>

最佳答案

根据附加的 xml 结构,team 节点似乎可以在 week 节点内有多个,因此您必须迭代 team code> 节点以提取 code

var week = theXML[i].getAttribute('number');
var teams = theXML[i].getElementsByTagName('Team');
teams.forEach(function(team) {
  console.log(team.getAttribute('code'));
});

关于javascript - 如何使用 javascript 或 jQuery 访问 xml 中的子子属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51089481/

相关文章:

javascript - 剑道网格 "editable false"用于更新, "editable true"用于创建

javascript - 计算本地存储中的键数

html - React 中的居中对齐组件(垂直和水平)

xml - && 在 XML 中(逻辑操作)

html - 为什么在调整浏览器大小时文本会超出方框?

javascript - jQuery:取消选择元素中的选项

javascript - 根据 $_GET 显示/隐藏 Div

javascript - 将数组索引处的值更改为 falsey 是否会使数组变得稀疏?

html - Magento,如何在 block 中添加静态 url 链接

javascript - krpano项目无法进入VR模式