在javascript中检查XML节点是否为空

时间:2013-05-10 03:42:22

标签: javascript

如果找到任何“播放器”节点,我如何遍历'roster'标签并推入数组。 我如何检查“名册”标签中没有子元素。

我尝试了以下方式,但没有工作,

var strXML = '<root><club><roster/></club>\
<club><roster>
<player code="AUQ" name="AVDALOVIC, VULE" position="Guard"/>\
<player code="AQX" name="SCHULTZE, SVEN" position="Forward"/>\
</roster></club></root>';

var p = new DOMParser();
var doc = p.parseFromString(strXML, "application/xml");   
var players=doc.getElementsByTagName("player");
var i=0,arr=[];
for(i=0;i<players.length;i++){
  arr.push({
    code:players[i].getAttribute("code"),
    name:players[i].getAttribute("name"),
    position:players[i].getAttribute("position"),
  });
}
console.log(arr);

我正在获取输出,但如果找到任何空白值,则输出将变为空白。

1 个答案:

答案 0 :(得分:0)

您的xml有问题,文档应该有一个根元素

var strXML = '<root><club><roster/></club><club><roster><player code="AUQ" name="AVDALOVIC, VULE" position="Guard"/><player code="AQX" name="SCHULTZE, SVEN" position="Forward"/></roster></club></root>';

演示:Fiddle