我有一个像这样的 XML:
<root>
<item>
<item name="Fruit">Fruits</item>
<item name="Vegetable">Vegetables</item>
</item>
</root>
如何单独删除节点值(“Fruits”“Vegetables”)在 Flex 中保留 XML 中的属性值“Fruit”“Vegetable”。
我有一个像这样的 XML:
<root>
<item>
<item name="Fruit">Fruits</item>
<item name="Vegetable">Vegetables</item>
</item>
</root>
如何单独删除节点值(“Fruits”“Vegetables”)在 Flex 中保留 XML 中的属性值“Fruit”“Vegetable”。
删除 XML 节点的后代。
delete item.descendants()[0];
举个例子:
var xml:XML =
<root>
<item>
<item name="Fruit">Fruits</item>
<item name="Vegetable">Vegetables</item>
</item>
</root>;
for each (var item:XML in xml.item.item)
{
delete item.descendants()[0];
}
trace(xml);
...会产生:
<root>
<item>
<item name="Fruit"/>
<item name="Vegetable"/>
</item>
</root>
我认为您应该遍历这些项目。
如果要删除所有项目的值,请执行以下操作:
var i:int = 0;
for each (var node:XML in xml.item.item)
{
xml.item.item[i] = "";
i++;
}
您可以指定一个条件:
var i:int = 0;
for each (var node:XML in xml.item.item)
{
if (node.@name == 'Fruit')
xml.item.item[i] = "";
i++;
}