..:: MX Studio Fóruns ::..: Duvidas para importar XML - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Duvidas para importar XML childNodes e etc

#1 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 30 May 2007 - 09:02 AM


Daeh galera. alguém sabe me explicar exatamente o que faz cada childNodes e as outras firulas para manupular os dados do xml?

Encontrei o seguinte aqui no site só que ele ensina pela metade os comandos.Link do Artigo

0

#2 User is offline   Natan 

  • Group: Moderador Global
  • Posts: 7350
  • Joined: 28-February 04

Posted 30 May 2007 - 10:46 AM

O link está errado, seria um desses tutoriais:

http://www.mxstudio.com.br/views.tutorial....d=3&aid=475

http://www.mxstudio.com.br/views.tutorial....d=3&aid=479

http://www.mxstudio.com.br/views.tutorial....d=3&aid=517

[]s
0

#3 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 30 May 2007 - 02:48 PM

ufff isso acho que vaih resolver meu prob. laugh.gif
0

#4 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 30 May 2007 - 08:55 PM

O kra tipow, eu tenho um xml assim:
CODE
<menu>
    <item>
         <texto>
            <![CDATA[mxstudio]]>
         </texto>
         <link>
            <![CDATA[http://www.mxstudio.com.br]]>
         </link>
     </item>
     <item>
         <texto>
            <![CDATA[forum]]>
         </texto>
        <link>
           <![CDATA[http://forum.mxstudio.com.br]]>
       </link>
   </item>
</menu>


E minha action tá assim:
CODE
var doc:XML = new XML();
doc.ignoreWhite = true;
doc.onLoad = function(sucess){
if(sucess == true){
menu.addItem(doc.firstChild.firstChild.firstChild.childNodes[0], doc.firstChild.firstChild.lastChild.childNodes[0]);
}
}
doc.load("teste.xml");


Daeh tenho um combo chamado de menu. Gostaria que ele recebe-se os dados como label e value.
Só que está só aparecendo [type Function] no combo. O que tem de errado?
0

#5 User is offline   Natan 

  • Group: Moderador Global
  • Posts: 7350
  • Joined: 28-February 04

Posted 31 May 2007 - 12:35 AM

AS
var doc:XML = new XML();
doc.ignoreWhite = true;
doc.onLoad = function(sucess) {
   if (sucess == true) {
      xmlNode = this.firstChild;
      total = xmlNode.childNodes.length;
      preenche();
   }
};
doc.load("teste.xml");
function preenche() {
   for (var i = 0; i<total; i++) {
      combo.addItem({label:xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue, value:xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue});
   }
}
var doc:XML = new XML();
doc.ignoreWhite = true;
doc.onLoad = function(sucess) {
if (sucess == true) {
xmlNode = this.firstChild;
total = xmlNode.childNodes.length;
preenche();
}
};
doc.load("teste.xml");
function preenche() {
for (var i = 0; i<total; i++) {
combo.addItem({label:xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue, value:xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue});
}
}


Onde combo é a instancia do seu ComboBox.

[]s
0

#6 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 31 May 2007 - 08:46 AM

Podes me explicar a linha do total e do combo. Tens uma coisas alih que não sei o que fazem.
0

#7 User is offline   Natan 

  • Group: Moderador Global
  • Posts: 7350
  • Joined: 28-February 04

Posted 31 May 2007 - 10:32 AM

O total eu estou pegando a quantidade de itens que tem no seu arquivo XML, os nós <item>. Ai crio um for para percorrer cada item do seu XML e preencher seu ComboBox com o valor do XML.

[]s
0

#8 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 31 May 2007 - 12:22 PM

Uma coisa, como eu faria para que quando selecionar um dos itens ele deh um get url para o value?
Sei que algo com:
var pular:Object = new Object();

código...

pular.change = function(){
getURL(combo.value);
}

Mais naum tah funfando. Talvez eu esteja colocando no lugar errado tb.

CODE
var pular:Object = new Object();
var doc:XML = new XML();
doc.ignoreWhite = true;
doc.onLoad = function(sucess) {
   if (sucess == true) {
      xmlNode = this.firstChild;
      total = xmlNode.childNodes.length;
      preenche();
      pular.change = function(){
           getURL(combo.value);
    }
   }
};
doc.load("teste.xml");
function preenche() {
   for (var i = 0; i<total; i++) {
      combo.addItem({label:xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue, value:xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue});
   }
}

0

#9 User is offline   Natan 

  • Group: Moderador Global
  • Posts: 7350
  • Joined: 28-February 04

Posted 01 June 2007 - 10:30 AM

Dá uma olhada nesse tuto:

http://www.mxstudio.com.br/views.tutorial....d=3&aid=255

[]s
0

#10 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 01 June 2007 - 08:10 PM

Bem consegue resolver meu ultimo problema. Agora tenho uma ultima duvida, que na verdade foi a primeira. Estou tentando fazer a jogada dos combo como no ajax.
Gostaria de saber como posso fazer agora para que ele importe outro xml para preencher outro combo. Só que o arquivo que deve ser importado é o value do label selecionado no primeiro combo. Pensei em fazer ele repetir tudo de novo em outro quadro. só colocando o combo.value (veiculo.value) mais não deu certo.
Natan ou alguem sabe me auxiliar nisso?

Código atual
CODE
var pular:Object = new Object();
var doc:XML = new XML();
doc.ignoreWhite = true;
doc.onLoad = function(sucess) {
   if (sucess == true) {
      xmlNode = this.firstChild;
      total = xmlNode.childNodes.length;
      preenche();
   }
};
doc.load("teste.xml");
function preenche() {
   for (var i = 0; i<total; i++) {
      veiculo.addItem({label:xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue, value:xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue});
   }
}
pular.change = function(){
        gotoAndStop(2);
        }
veiculo.addEventListener("change", pular);

0

#11 User is offline   Julian 

  • Group: Membros
  • Posts: 8
  • Joined: 30-May 07

Posted 01 June 2007 - 08:23 PM

No caso o problema está na função load. Se eu coloco doc2.load(veiculo.value); ele ao invez de pegar o value que é o nome do xml ele dah simplesmente o label e não o value. A função que você me passou natan está pegando o primeiro filho no value e no label está dando undefined. Descobre ao dar um trace no veiculo.label e trace no veiculo.value
Ele tá todo pirado, no combo ele mostra certo só que no trace e outras coisa ele deixa o label como undefined e o value com o valor do label.
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




1 User(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)