2009-04-29 55 views
2

我有了这条线的功能:E4X:在表达式中使用字符串作为属性名称?

var returnString:String = items[0][email protected]; 

@month是像这样的XML节点上的attibute:

<xmlnode month="JAN"/> 

确定的,但我需要抽象属性名称,这样我可以通过该函数的一个字符串,并获取名称与我传递的字符串匹配的属性内容。所以例如,如果我调用这个函数(“石头”),它会返回items [0]。@ stone。我希望这很清楚。

有谁知道如何去做我以后的事情?

谢谢。

+0

看起来所有我不能帮助,但觉得有什么错在这里的评论。我测试了你的答案所描述的解决方案,并没有得到你们所讨论的结果。 ~~~~~所以,我有一个属性 'ID = “哎”' ~~~~~`跟踪一些基本的XML;`//痕迹(XML @ ID):哎~~~~~`跟踪(XML 。'['id']); // trace traces ~~~~~`trace(xml.attribute('id'));`//记录空白~~~~~也使'id'变成一个String (从字面上)没有任何帮助。 – gltovar 2011-02-14 05:14:36

回答

6

你要使用的属性(“石头”),而不是@stone,其同样的事情,@stone是写它只是一种简便方法。

+0

对于最初提出问题的人以及我在提出问题时正在处理的几个应用程序中的工作。也许你的问题稍有不同。 – quoo 2011-06-29 20:12:41

2

不仅如此,但如果你想要一个值分配给使用变量属性名称的属性,你可以这样做(尽管它不是文件),像这样:

 
    public function setAttr(obj:XML, attrName:String, value:String):void{ 
    [email protected][attrName] = value; 
    } 
相关问题