![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 30
|
Пытаюсь загрузить данные из XML во Flash
dataXML = new XML(); dataXML.ignoreWhite = true; dataXML.onLoad = function(success) { name1.text = this.name1; name2.text = this.name2; }; dataXML.load("data.xml"); Как это вылечить? Перерыл весь поиск, но ответа не нашел |
|
|||||
|
Модрон-ветеринар
|
Запишите у себя
и увидите, что так обращаться нельзя, XML - это не LoadVars Вариант 1. <?xml version="1.0" encoding="UTF-8"?> <names> <name>Текст 1</name> <name>Текст 2</name> </names> dataXML = new XML(); dataXML.ignoreWhite = true; dataXML.onLoad = function(success) { if (success) { var xmlnode:XMLNode = this.firstChild ; //это корневой узел <names> name1.text = xmlnode.childNodes[0].firstChild.toString(); name2.text = xmlnode.childNodes[1].firstChild.toString(); } }; dataXML.load('data.xml'); Узел xmlnode - здесь это корневой узел <names> Массив childNodes Это массив узлов корневого узла, то есть все эти <name>. Узел firstChild Первый узел узла <name>. Текст - это тоже узел, доступ к нему можно получить так. Вариант 2. Автоматически циклом по произвольному количеству узлов. Атрибут id - не используется, но может понадобится, хотя бы чтобы не запутаться при формировании конфига. С переменной цикла i он не связан, пока сами не захотите. <?xml version="1.0" encoding="UTF-8"?> <names> <name id="1">Текст 1</name> <name id="2">Текст 2</name> </names> dataXML = new XML(); dataXML.ignoreWhite = true; dataXML.onLoad = function(success) { if (success) { var xmlnode:XMLNode = this.firstChild ; var total:Number = xmlnode.childNodes.length ; for (i = 0; i < total; i++) { _root['name' + (i + 1)].text = xmlnode.childNodes[i].firstChild.toString(); } } }; dataXML.load('data.xml');
__________________
Идите первым! Последний раз редактировалось mooncar; 20.02.2012 в 19:52. |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 30
|
Спасибо! Первый вариант полностью устраивает!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 21:14. |
|
|
« Предыдущая тема | Следующая тема » |
|
|