我有一个xml数据,如下所示。
<Sports>
<Oplympics>
<CONT Team="All" Country="Some" FLG = "0">
<TeamData Data="1" Data="2" Data="3"/>
</CONT>
<CONT Team="Aus" Country="Australia" FLG = "0">
<TeamData Player="X1" Player2 = "X2"/>
</CONT>
<CONT Team="Eng" Country="England" FLG = "0">
<TeamData Player="Y1" Player2 = "Y2"/>
</CONT>
</Oplympics>
我想要的是从CONT获取TeamData
的第一个标记,并从第2个到最后添加到所有CONT。示例输出将类似于
<Sports>
<Oplympics>
<CONT Team="All" Country="Some" FLG = "0">
<TeamData Data="1" Data="2" Data="3"/>
</CONT>
<CONT Team="Aus" Country="Australia" FLG = "0">
<TeamData Player="X1" Player2 = "X2"/>
<TeamData Data="1" Data="2" Data="3"/>
</CONT>
<CONT Team="Eng" Country="England" FLG = "0">
<TeamData Player="Y1" Player2 = "Y2"/>
<TeamData Data="1" Data="2" Data="3"/>
</CONT>
</Oplympics>
我正在尝试此代码。在这里我得到TeamData然后在for循环中它设置为第一个元素但是第二个它没有进入循环。我错过了什么。任何人都可以帮忙
var TeamData = Xml.getElementsByTagName('CONT')[0];
var CONTTag = Xml.getElementsByTagName('CONT');
for(var i=1; i<CONTTag.length-1; CONTTag++){
CONTTag[i].append(TeamData);
}
答案 0 :(得分:1)
您的代码存在一些问题:
以下是包含这些修补程序的代码:
var TeamData = Xml.getElementsByTagName('TeamData')[0];
var CONTTag = Xml.getElementsByTagName('CONT');
for (var i = 1; i < CONTTag.length; i++) {
CONTTag[i].append(TeamData.cloneNode());
}
其他一些一般性意见: