Actionscript 3 如何仅查找XML文件的基本节点
我有一个包含各种节点的xml文件,我希望得到它的第一个节点,而不是子节点。这是我的密码:Actionscript 3 如何仅查找XML文件的基本节点,actionscript-3,flash,actionscript,Actionscript 3,Flash,Actionscript,我有一个包含各种节点的xml文件,我希望得到它的第一个节点,而不是子节点。这是我的密码: function processXML(event:Event):void { menu_xml = new XML(event.target.data); trace (menu_xml.child("mainmenu")); } 此代码不显示任何内容。我正在使用Flash Professional CC 2015.0 编辑:以下是xml内容: <?xml version="1.0
function processXML(event:Event):void {
menu_xml = new XML(event.target.data);
trace (menu_xml.child("mainmenu"));
}
此代码不显示任何内容。我正在使用Flash Professional CC 2015.0
编辑:以下是xml内容:
<?xml version="1.0"?>
<mainmenu>
<home/>
<portfolio/>
<contact/>
<friends>
<joe/>
<karen/>
<bob/>
</friends>
</mainmenu>
编辑2:我只需要获取以下字符串:主页、公文包、联系人、朋友。您的变量
menu\u xml
是基本节点,通过调用menu\u xml.child(“主菜单”)
您正在寻找如下xml:
<mainmenu>//menu_xml
<mainmenu/>//menu_xml.child("mainmenu");
</mainmenu>
输出:
home
portfolio
contact
friends
有关在AS3中遍历XML结构的更多信息,我建议使用跟踪(“数据加载”。+菜单\u XML) 读这个:你好,谢谢你的回答。我在加载文件时没有任何问题。我只是无法得到我想要的节点。
home
、portfolio
和contact
都是空的,除非您给它们子节点和/或属性。@onurcano22-对不起:)对于每个节点(菜单中的var itemName:XML\u XML.elements()){trace(itemName.name();}
,谢谢您的回答。所以我怎么才能只得到这些节点:家、投资组合、联系人、朋友。我不明白你的意思。如果我得到名称,xml结构是否会受到影响?我要做的是将AS1中编写的fla文件转换为AS3。还有一些行,比如:node_xml.childNodes[i]和menu_xml.firstChild。我编辑了这个问题。再次感谢。xml结构没有改变。你只是在循环childNodes
和firstChild
不再存在。这些都是通过children()
函数处理的,因此firstChild
将是children()[0]
,而childNodes[i]
将是children()[i]
我添加了一个指向答案的链接,可以帮助您在AS3wow中浏览XML结构!我在“for”之后加上了“each”,效果很好。谢谢你抽出时间。
for each (var node:XML in menu_xml.children())
{
trace(node.name());
}
home
portfolio
contact
friends