这个(或它的一些变体)由我的PHP脚本输出请注意,某些标签在不同的上下文中使用相同的名称:
<conversations>
<status>1</status>
<conversation>
<open>0</open>
<status>1</status>
<priority>1</priority>
</conversation>
<conversation>
<open>1</open>
<status>0</status>
<priority>0</priority>
</conversation>
</conversations>
<messages>
<status>1</status>
<message>
<msgID>165</msgID>
<userID>16></userID>
<msg>How do I parse this?</msg>
</message>
</messages>
Run Code Online (Sandbox Code Playgroud)
首先,我需要循环并显示每个对话的按钮.然后我需要循环显示所选对话的所有新消息.我可以自己解决逻辑问题.我只是不知道如何解析(爬上)XML.谢谢你的帮助!
编辑:如果我说$("status",xml).text()我怎么知道正在引用哪个<status>标签?我需要区分<conversations>和<messages>.
.filter() 过滤顶层的节点, .children() 使用可选的选择器来获取顶级人员的一组直接子项.find() 使用选择器获取当前顶级水平下任意级别的一组节点.each() 迭代当前顶级的那些示例: http ://jsfiddle.net/MTPdw/1/
var $xml = $(xml);
var conversations = $xml.filter('conversations');
conversations.children('conversation').each(function() {
alert($(this).find('status').text());
});
Run Code Online (Sandbox Code Playgroud)
你做的时候:
$("status",xml).text()
Run Code Online (Sandbox Code Playgroud)
......它被转换成这个:
$(xml).find("status").text();
Run Code Online (Sandbox Code Playgroud)
因为顶层的节点是<conversations>和<messages>,它正在搜索作为其中任何<status>一个的后代的所有元素.在.text()随后返回其累积的文本内容.
| 归档时间: |
|
| 查看次数: |
1994 次 |
| 最近记录: |