用javascript遍历XMPP iq节

用javascript遍历XMPP iq节,javascript,jquery,jquery-mobile,xmpp,Javascript,Jquery,Jquery Mobile,Xmpp,我设法从prosody XMPP服务器获得了响应。因此,我得到了我的名册查询iq节 <iq xmlns="jabber:client" id="1:sendIQ" type="result" to="server@localhost/c38649b9-b47f-46b9-bcbc-7f0f683408f1"> <query xmlns="jabber:iq:roster" ver="41"> <item jid="sam@internal" subscr

我设法从prosody XMPP服务器获得了响应。因此,我得到了我的名册查询iq节

<iq xmlns="jabber:client" id="1:sendIQ" type="result" to="server@localhost/c38649b9-b47f-46b9-bcbc-7f0f683408f1">
  <query xmlns="jabber:iq:roster" ver="41">
    <item jid="sam@internal" subscription="none"/>
    <item jid="test@example.com" subscription="none"/>
    <item jid="blade@internal" subscription="none"/>
  </query>
</iq>

我想从item标签中获取JID的值。例如,sam@internal从项目标签中

到目前为止,我使用下面的javascript代码成功地访问了item标记。但我想转到“jid”

$(iq).find(“query”).children().each(函数)(){
警报(this.nodeName+'='+$(this.text());
});

以下是在JSFIDLE上运行的代码:


任何帮助都将不胜感激!!提前感谢。

以下是尝试失败后的答案

x=iq.getElementsByTagName('item');

        for (i=0;i<x.length;i++)
        {
          $("#msgs").prepend("<p><strong>" + "server" + "</strong>: " + x[i].getAttribute('jid') + "</p>");
          console.log(x[i].getAttribute('jid'));
        }
x=iq.getElementsByTagName('item');

对于(i=0;i您确定jQuery代码有效吗?我可以看出它有两个问题。
$(iq)
应该是
$('iq')
,并且在该节中找不到“list”元素。@Andy我确定它有效,因为我更改了输入错误(query而不是list)。获取这些值。但我想从item节点获取JID的值。item=item=item=