![]() |
|
||||||||||
|
|||||
|
стервочка (я мужик)
|
Подскажите пожалуйста как проще во флеш-переменые (три масива) занести бездетный xml. А то у меня чё-то только первый елемент заносит.
|
|
|||||
|
стервочка (я мужик)
|
В массив a - name; в b - href; ; в c - w.
Тоесть получить что-то вроде этого: Последний раз редактировалось BlooDHounD; 17.04.2004 в 21:39. |
|
|||||
|
xmlElt = new XML("<menu><m name='111'href='http://111.ru/'w='11'/><m name='222'href='http://222.com/'w='22'/><m name='333'href='http://333.net/'w='33'/></menu>");
var nod=xmlElt.firstChild.firstChild; a=[]; b=[]; c=[]; i=0; while(nod){ a[i]=nod.attributes.name; b[i]=nod.attributes.href; c[i]=nod.attributes.w; nod=nod.nextSibling; i++; } Последний раз редактировалось silin; 17.04.2004 в 23:52. |
|
|||||
|
стервочка (я мужик)
|
eXML = new XML();
eXML.ignoreWhite = true;
eXML.load('1.xml');
eXML.onLoad = function()
{
elXML=eXML.firstChild.firstChild;
while (elXML)
{
a[i]=elXML.attributes.name;
b[i]=elXML.attributes.href;
c[i]=elXMLattributes.w;
elXML=elXML.nextSibling;
i++;
}
}
Закинь исходник, плз! Последний раз редактировалось BlooDHounD; 18.04.2004 в 03:17. |
|
|||||
|
eXML = new XML();
eXML.ignoreWhite = true; eXML.load('1.xml'); a=[];b=[];c=[]; eXML.onLoad = function() { var i=0; var elXML=eXML.firstChild.firstChild; while (elXML) { a[i]=elXML.attributes.name; b[i]=elXML.attributes.href; c[i]=elXML.attributes.w; elXML=elXML.nextSibling; i++; } trace(a+" "+b+" "+c); } |
|
|||||
|
стервочка (я мужик)
|
Ничё не выходит!
Вот чё пишу в первом кадре: eXML = new XML();
eXML.ignoreWhite = true;
eXML.load('xml.xml');
var a = b = new Array();
eXML.onLoad = function()
{
var i = 0, elXML = eXML.firstChild.firstChild;
while (elXML)
{
a[i]=elXML.attributes.n;
b[i]=elXML.attributes.u;
elXML=elXML.nextSibling;
i++;
}
trace(a+" "+b);
}
|
|
|||||
|
Во первых, ты уверен, что хочешь создать второй массив как ссылку на первый?
Во вторых - просто попробуй так
__________________
судью - на мыло, из игроков - вить веревки. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
ошибка:
var a = b = new Array(); приводит к созданию ОДНОГО массива с двумя ссылками на него. и соответственно заполняешь ты тоже один массив. лучше так: eXML = new XML();
eXML.ignoreWhite = true;
eXML.load('xml.xml');
var a = [], b = [];
eXML.onLoad = function() {
var ptr = this.firstChild.firstChild;
while (ptr) {
a.push(ptr.attributes.n);
b.push(ptr.attributes.u);
ptr = ptr.nextSibling;
}
trace(a.join("\n")+"\n __ \n"+b.join("\n"));
};
или можно сделать так, со счетчиком: |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
какие шустрые блин :) слова вставить не дадут..
|
|
|||||
![]()
__________________
судью - на мыло, из игроков - вить веревки. |
![]() |
Часовой пояс GMT +4, время: 17:13. |
|
|
« Предыдущая тема | Следующая тема » |
|
|