Показать сообщение отдельно
Старый 14.03.2004, 21:01
Vinny[x] вне форума Посмотреть профиль Отправить личное сообщение для Vinny[x] Найти все сообщения от Vinny[x]
  № 1  
Vinny[x]

Регистрация: Mar 2004
Адрес: Belarus
Сообщений: 31
По умолчанию Как выдрать данные из функции после загрузки Xml?

Суть дела такова. Имеется скрипт в котором функция считывает данные из ХML файла и заносит данные в массив.
Объясните мне, почему у меня не получается вывести данные массивы за пределами функции?
Как это сделать правильно, чтобы все работало?
Мне эти данные нужно обрабатывать по всей временной шкале.
Может посоветуете более рациональный вариант хранения данных, чем мой 3-х мерный массив?

----Скрипт---
Код:
function ParseXML() {
	quiz = new Array();
	rootnode = xmlDoc.firstChild;
	he = rootnode.firstChild;
	for(var q=0; rootnode.childNodes.length > q; q++ ){
		if(q>0){
			he = he.nextSibling;
		}
		children = he.childNodes;
		quiz[q] = new Array();
		for(var i = 0; i < children.length; i++){
		quiz[q][i] = new Array();
		trace(children[i].firstChild.toString());
		quiz[q][i]["question"] = children[i].firstChild;
		atrib = children[i].attributes;
			for(attrib in atrib){
					quiz[q][i]["answer"] = atrib[attrib];
					trace(atrib[attrib].toString());
				}
		}
	}
trace(quiz[0][3]["question"]); // --- Вот тут выводит данные 
	}
xmlDoc=new XML();
xmlDoc.ignoreWhite = true;
xmlDoc.load("test3.xml");
xmlDoc.onLoad = ParseXML;
stop();
trace(quiz[0][3]["question"]); // --- А вот тут не выводит
---test3.xml-------
Код:
<?xml version="1.0" encoding="utf-8"?>
<testing>
 		
	    <quiz type="list" time="15">
		<questionintro>Question 1</questionintro>
		<answer correct="false">q1 Answer 1</answer>
		<answer correct="true">q1 Answer 2</answer>
		<answer correct="false">q1 Answer 3</answer>
		<answer correct="false">q1 Answer 4</answer>
	    </quiz>
		<quiz type="list" time="15">
		<questionintro>Question 2</questionintro>
		<answer correct="false">q2 Answer 1</answer>
		<answer correct="true">q2 Answer 2</answer>
		<answer correct="false">q2 Answer 3</answer>
		<answer correct="false">q2 Answer 4</answer>
	    </quiz>

</testing>