Comunidad de diseño web y desarrollo en internet online

Problemas con XML

Citar            
MensajeEscrito el 19 Jun 2005 02:00 am
Tengo este siguiente problema con xml.

noticia[i]= (miXML.firstChild.childNodes[0].childNodes[8].childNodes[0]);

////--------------------

esto me da como resultado:

<cintillo>20:45</cintillo>

////-----------------

el tema esta que yo quiero que solo me muestre el valor de ese nodo, que en este caso seria 20:45, y no hay forma de que me lo muestre, no se por que y quisiera saber si alguien me puede ayudar con esto, por que a parte ya probre de todas las formas posibles, como por ejemplo con ...attributes.cintillo ó con ...childNodes[0].nodeValue y tampoco.

Por favor que alguien me ayude!!!

Por 3dg

65 de clabLevel



Genero:Masculino  

Buenos Aires Argentina

firefox
Citar            
MensajeEscrito el 19 Jun 2005 02:09 am
Please usa la opcion buscar :crap:

Si este con <item cintillo ="23.45" />

seria con miXML.firstChild.childNodes[i].attributes.cintillo

ademas el nombre de la variable debe ser igual al primer nodo del XML, algo como:

<miXML>
<item cintillo="23.45" />
</miXML>

:roll: bueno usa la opcion buscar, este tema se ha tratado varias veces, y te aseguro que consigueras muchas respuestas mias.

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 19 Jun 2005 02:12 am
Facil:

Código :

noticia[i]= (miXML.firstChild.childNodes[0].childNodes[8].childNodes[0].firstChild.nodeValue); 

:)

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

clabbofh
Citar            
MensajeEscrito el 19 Jun 2005 03:09 am
Muchas gracias por las respuestas, me ayudaron un monton

Gracias!!!

Por 3dg

65 de clabLevel



Genero:Masculino  

Buenos Aires Argentina

firefox
Citar            
MensajeEscrito el 21 Jun 2005 08:48 pm
Vereis mi problema es que trato de usar la propiedad nodeValue de un nodo pero siempre me devuelve null, puede ser que el nodo no sea de texto (tampoco se mucho de xml) pero contiene texto entre la etiqueta de apertura y de cierre, y al invocar a toString me devuelve esta traza <title>Full Metal Alchemist</title> que coincide con lo que pone en el xml.
Alguna sugerencia o ayuda por favor...

Por gothmoth

7 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 Jun 2005 09:48 pm
Puede ser que estés equivocando la llamada al nodo en cuestión (por ejemplo utilizando childNodes en vez de firstChild, o algo por el estilo)

Si pones tu código será más fácil colaborarte...

Saludos.

Por ExGaul

Claber

180 de clabLevel



Genero:Masculino  

Cereté - Colombia

firefox
Citar            
MensajeEscrito el 22 Jun 2005 05:05 pm
efectivamente no pongo first child primero, realmente hace falta??

noticias[i]=new Noticia(nod.childNodes[i].childNodes[0].nodeValue, nod.childNodes[i].childNodes[1].nodeValue, nod.childNodes[i].childNodes[2].nodeValue, nod.childNodes[i].childNodes[3].nodeValue);

El codigo completo es este:

Código :

import Noticia.as;
var noticias:Array = new Array();
var mixml:XML = new XML();
mixml.ignoreWhite = true;

cargaXML("http://www.snfansub.net/rssnf.php");

mixml.onLoad = function (exito) { //exito será true si se carga bien y false en otro caso.
   if (exito)
   {
      if(( mixml.loaded)&&(mixml.status==0))
      {
         if(mixml.hasChildNodes())
         {
            trace("manda el primero");
            cargaNodo(mixml.firstChild.firstChild);
            trace("fin");
         }
      }
   }
}

function cargaNodo(nod) 
{
   for (i=5;i<nod.childNodes.length;i++) 
   {
      //trace("entra en el for");
      //trace(nod.childNodes[i].nodeName);
      if(nod.childNodes[i].nodeName=="item")
      {
         //trace("encuentra item");
         noticias[i]=new Noticia(nod.childNodes[i].childNodes[0].nodeValue,  nod.childNodes[i].childNodes[1].nodeValue, nod.childNodes[i].childNodes[2].nodeValue, nod.childNodes[i].childNodes[3].nodeValue);
//esto lo puse para tratar de apañarlo         
//nod.childNodes[i].childNodes[0].nodeType = 3;
         //trace(nod.childNodes[i].childNodes[0].nodeName + " = " + noticias[i].getTitular());
         //trace(nod.childNodes[i].childNodes[0].toString() + " = " + noticias[i].getTitular());
      }
   }
}

function cargaXML (url) 
{
   mixml.load(url);
}

Por gothmoth

7 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Jun 2005 05:08 pm
Vale tienes razon me faltaba el firstChild, pero no termino de entender la diferencia entre firstChild y childNodes[0]

Por gothmoth

7 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Jun 2005 06:09 pm
Bueno, firstChild hace referencia al primer nodo encontrado, mientras que childNodes es una matriz que contiene los nodos hijos de otro nodo particular.
Por ejemplo si tenemos un xml:

Código :

<datos>
    <dato1/>
    <dato2/>
    <dato3/>
</datos>


y lo cargas en una variable xml llamada miXML:

1. miXML.firstchild sería el nodo <datos>
2. miXML.firstchild.childnodes[indice] sería la referencia a los nodos <datos1>, <datos2> o <datos3>, según sea el valor de indice
3. miXML.firstchild.firstchild sería el primer nodo dentro de <datos>, o sea <datos1>

Saludos.

Por ExGaul

Claber

180 de clabLevel



Genero:Masculino  

Cereté - Colombia

firefox
Citar            
MensajeEscrito el 24 Jun 2005 12:25 pm
Muchas gracias ExGaul-sensei ^^

Por gothmoth

7 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 24 Jun 2005 05:17 pm
:oops: :oops: :oops: :wink: :wink: :wink: ^^ ^^ ^^

Saludos.

Por ExGaul

Claber

180 de clabLevel



Genero:Masculino  

Cereté - Colombia

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.