gpt4 book ai didi

jquery - 我如何使用 jQuery 来解析 XML,就像我在这里所做的那样

转载 作者:数据小太阳 更新时间:2023-10-29 02:59:14 25 4
gpt4 key购买 nike

这个(或它的一些变体)是由我的 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>

首先,我需要循环并为每个对话显示一个按钮。然后我需要遍历并显示所选对话的所有新消息。我可以自己弄清楚逻辑。我只是不知道如何解析(绕过)XML。感谢您的帮助!

编辑:如果我说 $("status",xml).text() 我怎么知道引用了哪个 标签?我需要区分

最佳答案

  • .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());
});

当你在做的时候:

$("status",xml).text()

...它被转换成这样:

$(xml).find("status").text();

因为顶层的节点是<conversations><messages> , 它正在搜索所有 <status>作为其中任何一个的后代的元素。 .text()然后返回他们累积的文本内容。

关于jquery - 我如何使用 jQuery 来解析 XML,就像我在这里所做的那样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4664684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com