Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.11.2006, 18:03
Videneev вне форума Посмотреть профиль Отправить личное сообщение для Videneev Посетить домашнюю страницу Videneev Найти все сообщения от Videneev
  № 1  
Ответить с цитированием
Videneev
 
Аватар для Videneev

Регистрация: Jul 2004
Адрес: Россия, Уфа
Сообщений: 6
Отправить сообщение для Videneev с помощью ICQ
По умолчанию XML и Array

Есть код:

Код:
roomArray = new Array();
textArray = new Array();
roomXML = new XML();
roomXML.ignoreWhite = true;
roomXML.load("32.xml");
roomXML.onLoad = function(loaded){
	if(loaded){
		rooms = this.firstChild;
		skolkoRooms = rooms.childNodes.length;
		for (i=0; i<skolkoRooms; i++ ){
			roomArray.push(rooms.childNodes[i].attributes.id);
			textArray.push(rooms.childNodes[i].attributes.txt); 

trace("ID: "+roomArray[i]+" TXT: "+textArray[i]);       // массив есть и все показывает

		}
	}
}

trace("ID: "+roomArray[0]);
trace("TXT: "+textArray[0]);
// массива нет и показывает undefined
в функии массив собран и все показывает, а за функцией говорит что undefined

вот XML:
Код:
<?xml version="1.0" ?>
<rooms>
<room id="1" txt="Магазин №1"></room>
<room id="2" txt="Магазин №2"></room>
<room id="3" txt="Магазин №3"></room>
<room id="4" txt="Магазин №4"></room>
<room id="5" txt="Магазин №5"></room>
</rooms>
Кто подскажет где собака порылась?

Старый 22.11.2006, 18:09
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ты не дождался загрузки, поставь трейс внутри onLoad

Старый 22.11.2006, 18:19
Videneev вне форума Посмотреть профиль Отправить личное сообщение для Videneev Посетить домашнюю страницу Videneev Найти все сообщения от Videneev
  № 3  
Ответить с цитированием
Videneev
 
Аватар для Videneev

Регистрация: Jul 2004
Адрес: Россия, Уфа
Сообщений: 6
Отправить сообщение для Videneev с помощью ICQ
Цитата:
Сообщение от __etc
Ты не дождался загрузки, поставь трейс внутри onLoad
трейс внутри стоит и работает, но мне нужен этот массив за onLoad'ом

мне нужно вывести этот массив в Dynamic text

Старый 22.11.2006, 18:22
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Вне метода нельзя, потому что это метод вызывается позже — загрузка асинхронна с выполнением кода.

Старый 22.11.2006, 18:24
Videneev вне форума Посмотреть профиль Отправить личное сообщение для Videneev Посетить домашнюю страницу Videneev Найти все сообщения от Videneev
  № 5  
Ответить с цитированием
Videneev
 
Аватар для Videneev

Регистрация: Jul 2004
Адрес: Россия, Уфа
Сообщений: 6
Отправить сообщение для Videneev с помощью ICQ
млин.

и что никак?

Старый 22.11.2006, 18:29
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 6  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Никак. А зачем? Все равно до вызова onLoad массив не будет доступен.

Старый 22.11.2006, 20:22
Videneev вне форума Посмотреть профиль Отправить личное сообщение для Videneev Посетить домашнюю страницу Videneev Найти все сообщения от Videneev
  № 7  
Ответить с цитированием
Videneev
 
Аватар для Videneev

Регистрация: Jul 2004
Адрес: Россия, Уфа
Сообщений: 6
Отправить сообщение для Videneev с помощью ICQ
мне нужно загрузить данные в массив из xml, что б потом этот массив использовать.

может подскажешь как?

Старый 22.11.2006, 20:30
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 8  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Так у тебя уже всё написано в onLoad!

Старый 22.11.2006, 20:47
Videneev вне форума Посмотреть профиль Отправить личное сообщение для Videneev Посетить домашнюю страницу Videneev Найти все сообщения от Videneev
  № 9  
Ответить с цитированием
Videneev
 
Аватар для Videneev

Регистрация: Jul 2004
Адрес: Россия, Уфа
Сообщений: 6
Отправить сообщение для Videneev с помощью ICQ
но если я в сцену вставляю Dynamictext и пишу в var roomArray[0] - то ничего нет :-(
а мне именно и нужно загрузить массив, а потом его вывести в сцене...

Старый 22.11.2006, 21:41
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 10  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
вместо
Код:
trace("ID: "+roomArray[i]+" TXT: "+textArray[i]);
напиши
Код:
<id-текстового-поля>.text += "ID: "+roomArray[i]+" TXT: "+textArray[i];
id поля пишется слева в свойствах

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:37.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:37.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.