PDA

Просмотр полной версии : Xml массивы и остольная лабуда


efim
12.03.2003, 14:43
XML_filename = "project.xml";
myXml = new XML();
//грузим Xml
myXml.load(XML_filename);
myXml.ignoreWhite = true;
myXML.onLoad = function(parser) {
if (myXml.loaded && this.hasChildNodes) {
rootNode = myXml.firstChild;
totalPages = rootNode.childNodes.length;
//тоесть это странцы пороекта
//names = [];
page = [];
page = rootNode.childNodes;
pageConsist = [];
for (i=0; i<totalPages; i++) {
trace(page[0].nodeName);
page[0].attributes.zagalovok = pageZagolovok;
pageConsist = page[i].childNodes;
_root.attachMovie("menuItem", "menuItem"+i, ++Depth);
_root["menuItem"+i]._x = 100;
_root["menuItem"+i]._y = 100+(i*33);
_root["menuItem"+i].pageN = Depth;
_root["menuItem"+i].pageZ = pageZagolovok;
for (j=0; j<pageConsist.length; j++) {//doSm
}

}
}
};


xml

<cd>
<page zagalovok="ded i babka shokoladka"></page>
<page zagalovok="ded i babka shokoladka"></page>
<page zagalovok="ded i babka shokoladka"></page>
</cd>

вопрос таков при запуске теста лист варибле выдает

Variable _level0.page = [object #3, class 'Array'] [
0:[object #4, class 'XMLNode'] {
<page zagalovok="" />
},
1:[object #5, class 'XMLNode'] {
<page zagalovok="ded i babka shokoladka" />
},
2:[object #6, class 'XMLNode'] {
<page zagalovok="ded i babka shokoladka" />
}
] почему не<page zagalovok="ded i babka shokoladka" /> :rolleyes: :rolleyes:

Nox Noctis
12.03.2003, 15:21
эмм... что-то мне подсказывает, что ты имел в виду

pageZagolovok = page[0].attributes.zagalovok;

а не как у тебя написано:

page[0].attributes.zagalovok = pageZagolovok;

иначе похоже ты стираешь атрибуты :)

efim
12.03.2003, 15:28
а наверно спасибо огромное у меня так и было потом пробовал связи с другим глюком
(;
нет попробовал таже лабуда может чего в плаере когда использовал одномерный массив глюка небыло этого ноксик виликий и ужасный помоги а пожалуйста

Nox Noctis
12.03.2003, 16:50
хороший хирург поможет плохому танцору.

ты б почитал для разнообразия что сам понаписал :)
for (i=0; i<totalPages; i++) {
trace(page[0].nodeName);
page[0].attributes.zagalovok = pageZagolovok;
ты атрибут страницы с индексом ноль приравниваешь переменной pageZagolovok...
но ты нигде не определяешь что такое pageZagolovok :)
вот у тебя заголовок нулевой ноды и убивается...

вот:
for (i=0; i<totalPages; i++) {
pageZagolovok = page[i].attributes.zagalovok;

efim
12.03.2003, 16:54
ой ноксик спасибо :)