Просмотр полной версии : В текстовое флэш-поле из файла XML
kengooroo
16.03.2006, 16:01
Есть такая функция:
my_xml = new XML();
_root.btn.onPress = function() {
my_xml.load("1.xml");
trace(my_xml.firstChild.firstChild.nodeType);
trace(my_xml.firstChild.firstChild.nodeName);
trace(my_xml.firstChild.firstChild.nodeValue);
trace(my_xml.toString());
trace(my_xml.firstChild.nodeName.toString());
trace(my_xml.firstChild.firstChild.nodeValue);
txt = my_xml.firstChild.firstChild.nodeValue;
};
Далее содержание фала 1.xml:
<score>10</score>
Ситуация такова - есть текстовое поле txt кнопка btn, при нажатии на которую должно выводиться содержание XML-файла в текстовое окно, но вместо "10" в поле выводится "undefined", также в поле trace выводяться все запросы отображаются как "undefined". А уже при повторном нажатии на кнопку в текстовом поле и в поле trace отображается информация, которая там и должна отображаться при первом нажатии на кнопку.
Помогите разобраться с этой ситуацией - это или код плохой или сама прога(Flash MX 2004 pro) запареная?
Во-первых, файл XML должен иметь формат:
__________
<?xml version="1.0"?>
<data>
</data>
__________
Т.е. первая строка про версию обязательна.
Во-вторых, посмотри мой пример. Там есть нормальная загрузка XML. Ты сразу пытаешься обратиться к данным, а лучше "подождать", пока объект XML отрапортует о том, что данные поступили.
Пример: http://www.flasher.ru/forum/showthread.php?t=76968
Т.е. первая строка про версию обязательна.
Флешу по барабану есть она или нет!
kengooroo
16.03.2006, 18:26
Во-первых, файл XML должен иметь формат:
__________
<?xml version="1.0"?>
<data>
</data>
__________
Т.е. первая строка про версию обязательна.
первая строка не обязательна.
Во-вторых, посмотри мой пример. Там есть нормальная загрузка XML. Ты сразу пытаешься обратиться к данным, а лучше "подождать", пока объект XML отрапортует о том, что данные поступили.
Это про функцию my_xml.loaded? Так она не работает
Флешу по барабану есть она или нет!
Странно, но у меня MX2004Pro и ему совсем не по барабану. Попросту говоря, он не понимает файл без этой строки.
Samodelkin
16.03.2006, 18:47
есть событие такое onLoad.
Samodelkin
16.03.2006, 18:58
Странно, но у меня MX2004Pro и ему совсем не по барабану. Попросту говоря, он не понимает файл без этой строки.
Что значит не понимает? У меня всегда было по барабанну и 2004 тоже.
kengooroo
18.03.2006, 22:28
Во-первых, файл XML должен иметь формат:
__________
<?xml version="1.0"?>
<data>
</data>
__________
Т.е. первая строка про версию обязательна.
Во-вторых, посмотри мой пример. Там есть нормальная загрузка XML. Ты сразу пытаешься обратиться к данным, а лучше "подождать", пока объект XML отрапортует о том, что данные поступили.
Пример: http://www.flasher.ru/forum/showthread.php?t=76968
ну изменил я XML-файл так:
<?xml version="1.0" encoding="UTF-8" ?>
<score>10</score>
Результат - тот же, после первого вызова инфы из файла - undefined, а только со второго раза все работает :confused:
alkonaft
18.03.2006, 23:01
/
назови текс именем.
при Onload
Пиши
txt.text = my_xml.firstChild
У тебя в xml только одна дочка. А не две.
ps если не стоит событие onload то флеш вообще ни чего не выдаёт.
kengooroo
19.03.2006, 03:11
А как этот onLoad включить?
alkonaft
19.03.2006, 03:46
my_xml= new XML();
my_xml.load("123.xml");
my_xml.ignoreWhite = true;
my_xml.onLoad = analis;
function analis() {
//Пишиш код.
trace(my_xml.firstChild.nodeType);
trace(my_xml.firstChild.nodeName);
trace(my_xml.firstChild.nodeValue);
trace(my_xml.toString());
trace(my_xml.firstChild.nodeName.toString());
trace(my_xml.firstChild.nodeValue);
txt.text = my_xml.firstChild.nodeValue;
}
kengooroo
19.03.2006, 15:13
Спасибо!!!!!!!!!!!!!!!! :cool:
my_xml = new XML();
_root.btn.onPress = function() {
my_xml.onLoad = function(ok) {
if (ok) {
txt = this.firstChild.firstChild.nodeValue;
}
};
my_xml.load("1.xml");
};
alkonaft
20.03.2006, 03:50
my_xml = new XML();
_root.btn.onPress = function() {
my_xml.onLoad = function(ok) {
if (ok) {
txt = this.firstChild.firstChild.nodeValue;
}
};
my_xml.load("1.xml");
};
Он в иеархии не разобрался.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.