我有一个xml结构:
<xml>
<node label="comp_unit">
<node label="stratum">
<node label="tree"/>
</node>
</node>
</xml>
现在,我试图用stratum label = stratum删除节点, 所以,我这样做.. delete xml.node。(@ label ==“stratum”); 但我收到一条错误消息:删除操作符不能在xmlList上工作。 我试过这个: 删除XML(xml.node。(@ label ==“stratum”); 但该节点未被删除..
任何人都有线索?
答案 0 :(得分:0)
我不知道您需要的删除语法,但是您应该使用单个=
在xpath中进行相等的比较:@label="stratum"
修改
你是对的。它不是真正用于flex的XPath。
可能您需要先检索节点列表,然后删除元素:
var nodeList:XMLList = xml..node.(@label=="stratum");
for(var i:int = nodeList.length() -1; i >= 0; i--)
{
delete nodeList[i];
}
请参阅here。
答案 1 :(得分:0)
使用以下内容:
delete xml..node.(@label=="stratum")[0];