0

我想解析以下 xml 流:

<telhdl:leg>
  <tel:deviceId>82085625</tel:deviceId>
  <tel:media>AUDIO</tel:media>
  <tel:state>ACTIVE</tel:state>
  <tel:capabilities>
    <tel:drop>true</tel:drop>
    <tel:hold>true</tel:hold>
    <tel:mute>true</tel:mute>
    <tel:sendDtmf>true</tel:sendDtmf>
  </tel:capabilities>
</telhdl:leg>
<telhdl:leg>
  <tel:deviceId>82085625</tel:deviceId>
  <tel:media>VIDEO</tel:media>
  <tel:state>ACTIVE</tel:state>
  <tel:muted>true</tel:muted>-
  <tel:capabilities>
    <tel:drop>true</tel:drop>
    <tel:unMute>true</tel:unMute>
  </tel:capabilities>
</telhdl:leg>

如您所见,有 2 组腿,但其中一组有一个属性,例如另一组(静音)中不存在。

我尝试使用以下代码解析它:

$(xmlDoc).find('telhdl\\\\:deviceId,deviceId');$(xmlDoc) 是文档节点。

它工作正常,但我不知道如何正确解析这个文件以得到一个包含 2 条腿块信息的数组。

问题更多:如何进行解析的结果?

4

1 回答 1

2

这应该可以解决问题:

$(xmlDoc).find("telhdl").each(function() {
    var deviceId = $(this).find("deviceId").text();
    var media = $(this).find("media").text();
    ....etc....
    var array = new Array(deviceId,media,...etc...);
});
于 2013-08-13T14:56:10.870 回答