Ciao a Tutti!!
Stò caricando all'interno di un movie, un file XML da cui devo recuperare del testo e altri dati.
Qualcuno mi sa spiegare come posso ditinguere i TAG XML e associare a delle variabili globali il contenuto dei TAG?
Grazie, Luca!!
Ciao a Tutti!!
Stò caricando all'interno di un movie, un file XML da cui devo recuperare del testo e altri dati.
Qualcuno mi sa spiegare come posso ditinguere i TAG XML e associare a delle variabili globali il contenuto dei TAG?
Grazie, Luca!!
Com'è fatto l'xml?
è generato da un DB oracle, e si presenta come una pagina HTML. Le voce da caricare sono solo 4 però e bisognerebbe riuscire a identificare i TAG all'interno
io ci provo..
prendiamo un XML di esempio
<listino>
<prodotti>
<Codice>300</Codice>
<Descrizione>corda</Descrizione>
<Immagine>immagine300</Immagine>
</prodotti>
<prodotti>
<Codice>400</Codice>
<Descrizione>racchetta</Descrizione>
<Immagine>immagine400</Immagine>
</prodotti>
<prodotti>
<Codice>500</Codice>
<Descrizione>pallone</Descrizione>
<Immagine>immagine500</Immagine>
</prodotti>
</listino>
Riferimenti ai nomi dei campi dell’xml
Per avere i nomi dei tag si usa nodeName mentre per avere i valori contenuti dentro ai tag si usa nodeValue I valori si ottengono sempre riferendosi a firstChild riferito al tag che contiene il valore, come da esempi.
<listino> MyXml.firstChild.nodeName
<prodotti> MyXml.firstChild.firstChild.nodeName
(il primo figlio dell'xml principale di nome “prodotti”)
<prodotti> MyXml.firstChild.firstChild.nextSibling.nodeName
(il secondo figlio di nome “prodotti” o il successivo al primo)
<prodotti> MyXml.firstChild.firstChild.nextSibling.nextSiblin g.nodeName
(il terzo figlio di nome “prodotti” o il successivo al sibling precedente)
<Codice> MyXml.firstChild.firstChild.firstChild.nodeName
(il primo figlio del primo nodo prodotti)
300 MyXml.firstChild.firstChild.firstChild.firstChild. nodeValue (il valore del tag codice..)
<Descrizione> MyXml.firstChild.firstChild.firstChild.nextSibling .nodeName
(il figlio successivo del primo nodo prodotti)
<Immagine> MyXml.firstChild.firstChild.firstChild.nextSibling .nextSibling
.nodeName
(il figlio successivo all’ultimo riferimento del figlio del primo nodo prodotti)
e via di seguito.. se ho scritto qualche caz.. correggetemi
dimenticavo.. ovviamente puoi usare anche altri comandi sempre relativi agli oggetti XML, e crearti cicli che ti creano in modo automatico queste lunghe stringhe per andare a prenderti il nome o il valore di un nodo.
Adesso provo ad applicare il tutto al mio caso, ci vorrà un pò... ma ti terrò aggiornato...
in che modo associo a delle variabili, ciò che trovo dentro i TAG?
Grazie
prendendo l'esempio del mio xml sopra... se voglio il valore "300" del nodo " <Codice>300</Codice> "
var miavariabile = MyXml.firstChild.firstChild.firstChild.firstChild. nodeValue;
al posto di nodeValue ci metto il nome del TAG cioè del nodo? OK?
GRAZIE
no NodeValue è la proprietà del nodo tutta la parte prima ovvero:
"MyXml.firstChild.firstChild.firstChild.firstChild "
dice che nodo prendere.. ovvero in questo caso
<listino> (nodo1)
<prodotti> (nodo2)
<Codice> (nodo3)
300 (nodo4)
se leggi ci sono 4 FirstChild dopo MyXml.. ovvero dice di andare al primo figlio.. del primo figlio. del primo figlio del primo figlio... (scusa la prolissità ma è cosi..) flash una volta arrivato al nodo.. prende la propietà che gli hai chiesto.. ovvero il valore del 4 nodo (NodeValue)
e assegna alla variabile "300"
![]()
rompere, e ti ringrazio per la tua pazienza, ma non riesco a farlo funzionare...
Questo è il codice che stò usando:
fileXML = "csi-mod.xml";
mioXML = new XML();
mioXML.load(fileXML);
id = fileXML.firstChild.firstChild.nodeValue;
C'è qualcosa di strano??
Grazie mille, Luca!!