Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 10 di 12
  • livello principiante
Indice lezioni

Secondo esempio

Lettura del contenuto del nodo
Lettura del contenuto del nodo
Link copiato negli appunti

Adesso, però, proviamo ad inserire nel campo di testo solo il contenuto vero e proprio del nodo. Come abbiamo visto, il contenuto di un nodo è conservato nella proprietà nodeValue relativa al primo figlio del nodo stesso (infatti il contenuto testuale del nodo viene considerato un nodo figlio).

mio_xml = new XML();
mio_xml.path = this;
mio_xml.ignoreWhite = true;
mio_xml.onLoad = function(success)
{
  if(success){
   
// mostriamo nel campo di testo solo
    // il contenuto del primo nodo figlio
    this.path.testo = this.firstChild.firstChild.nodeValue;
  } else {
    this.path.testo = "caricamento errato";
  }
};
mio_xml.load("file1.xml");

Scarica l'esempio

Cambiamo il file XML, aggiungendo questa volta anche due attributi:

Per mostrare il valore di un attributo, dobbiamo accedere alla proprietà attributes del nodo: la proprietà attributes è un array associativo, e con la sintassi attributes.attributo ne estraiamo il contenuto:

mio_xml = new XML();
mio_xml.path = this;
mio_xml.ignoreWhite = true;
mio_xml.onLoad = function(success)
{
  if(success){
    // mostriamo nel campo di testo solo il contenuto
   
// dell'attributo "regista", accessibile tramite
    // la proprietà "attributes"
    this.path.testo = this.firstChild.attributes.regista;
  }else {
    this.path.testo = "caricamento errato";
  }
};
mio_xml.load("file2.xml");

Scarica l'esempio

Per mettere tutto assieme, modifichiamo innanzitutto il campo di testo, settandone l'opzione HTML dal pannello Text Options:

Pannello Text Options

Pannello Text Options

Quindi, via script:

mio_xml = new XML();
mio_xml.path = this;
mio_xml.ignoreWhite = true;
mio_xml.onLoad = function(success)
{
  if(success){
    // creiamo due variabili locali, contenenti l'apertura
    // e la chiusura del tag html "font" impostandone il colore
    var t1 = "<font color='#006699'>";
    var t2 = "</font>";
    
    // creiamo tre variabili locali, rispettivamente per il
    // contenuto e i due attributi del primo nodo del file xml
    var titolo = this.firstChild.firstChild.nodeValue;
    var regista = this.firstChild.attributes.regista;
    var anno = this.firstChild.attributes.anno;

    // definiamo nella timeline salvata in "path" la variabile
    // "testo", che ci verrà mostrata dall'omonimo campo
    // per ogni riga di "testo", creiamo una stringa formata
    // da una sottostringa, dall'apertura del tag font, dal
    // valore di una delle tre variabili, dalla sua chiusura
    // e da un rimando a capo
    this.path.testo = "Titolo: " + t1 + titolo + t2 + "<br>";
    this.path.testo += "Regista: " + t1 + regista + t2 + "<br>";
    this.path.testo += "Anno: " + t1 + anno + t2;
  } else {
    this.path.testo = "caricamento errato";
  }
};
mio_xml.load("file2.xml");

Scarica l'esempio

Ti consigliamo anche