Просмотр полной версии : Изменить атрибут XML
MerlinTwi
06.12.2006, 22:47
var xml:XML = <test name="test" />;
xml.@name = "zzz";
А что делать если название атрибута "name" хранится в переменной? :)
artcraft
06.12.2006, 23:15
xml.@[nameString] = "zzz";
а что если мы хотим перебрать всех детей или все атрибуты. И вобще я не понимаю зачем вызывать функции типа attributes() и т.п., почему убрали массивы ? Где крутость сего подхода ?
artcraft
06.12.2006, 23:52
The following example shows using for each..in to iterate over the properties in an XMLList object (doc.p):
var doc:XML =
<body>
<p>Hello</p>
<p>Hola</p>
<hr />
<p>Bonjour</p>
</body>;
for each (var item in doc.p) {
trace(item);
}
/* output:
Hello
Hola
Bonjour
*/
подробности тут (http://livedocs.macromedia.com/flex/2/docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001910.html) :~)
В твоём примере пропущен тэг <br />. Как перебрать всех детей средствами нового xml объекта?
artcraft
07.12.2006, 00:20
var doc:XML = <body><p>Hello</p><p>Hola</p><hr /><p>Bonjour</p></body>;
for each (var item in doc.*) {
trace(item.toXMLString());
}
/*
<p>Hello</p>
<p>Hola</p>
<hr />
<p>Bonjour</p>
*/
Ну не нравится мне такой подход, не нравится... :)
artcraft
07.12.2006, 00:28
тогда делай так
for(var i:uint=0; i<doc.children().length(); i++){
trace(doc.child(i).toXMLString());
}
Юзайте XMLDocument тогда, по старинке :D
artcraft
07.12.2006, 02:41
И у вас будет обратная совместимость :~)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.