Использование e4x в flex:
var attr : String = "foo";
var xml : XML =
<resultSet>
<node foo="1"/>
</resultSet>;
Как я могу использовать переменную "attr" для доступа
xml.node.@foo
Я думал, что смогу сделать это с
xml.node.@[attr]
Но, похоже, это не работает. Как я могу получить доступ к этому атрибуту по динамическому значению, как это?
EDIT:
Оба
xml.node.@[attr];
и
xml.node.attribute(attr);
работа, как предложил Константинер.
Обновление:
Скажем, у меня есть XMLList в этой форме:
var bar:XML =
<resultSet>
<node>value</node>
</resultSet>;
Я хочу отфильтровать оригинальный XML выше, сопоставив атрибуты "foo" с "значением" из узла в баре.
По сути, я хочу подсписок исходного XML, такой, что
xml.node.@foo == bar.value
для каждой строки XML в исходном значении
Как упоминал Константинер, я могу отфильтровать исходный список по значению в foo, но что, если я хочу фильтровать по нескольким значениям?
Могу ли я сделать что-то вроде:
xml.node.(bar.node.contains(attribute(foo)) ? attribute(foo) : null);
Или, возможно, более чистый метод вместо нуля?