Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Caricamento xml da actionscript 2.0

    Scusate la banalità del post su cui sicuramente ci sono molte discussioni in tema. Vi chiedo però cortesemente di rispondermi se potete perchè avrei una certa urgenza.

    io nel mio codice ho scritto questo:

    var provaXml:XML = new XML();
    provaXml.load("prova.xml");

    my_txt.text = String(my_xml.firstChild.attributes.titolo);

    che dovrebbe richiamare l'attributo del firstChild di un xml che è presente nella stessa cartella. dentro un'area di testo dinamica, istanziata col nome di my_txt sullo stage.

    Il mio xml è così:

    <test titolo="MEGATEST">
    <quiz>
    <question>ciao</question>
    <answers>
    <answer>ciao 1</answer>
    <answer>ciao 2</answer>
    </answers>
    </quiz>
    </test>

    Quando genero l'swf mi da "undefined". Dove sbaglio?

  2. #2

  3. #3
    In effetti my_xml è sbagliato, avrei dovuto scrivere: provaXml.firstChild.attributes.titolo etc..

    però nemmeno così riesco, c'è qualcosa che mi sfugge.

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Le richieste verso fonti esterne da flash avvengono in maniera asincrona, perciò in pratica non puoi sapere con esattezza quando puoi sfruttare una variabile a meno che non lo fai dentro ad una funzione che rappresenta l'evento di avvenuto caricamento della risorsa esterna. Nel caso della classe XML la funzione è "onLoad" e perciò solo dentro quella funzione la stringa che hai scritto avrà un valore:

    Codice PHP:
    var provaXml:XML = new XML();
    provaXml.load("prova.xml");
    provaXml.onLoad = function (ok) {
        if (
    ok) {
            
    my_txt.text String(this.firstChild.attributes.titolo);
        }

    Nella funzione riferita a "provaXml" puoi riferirti alla stessa istanza con this, che all'interno della funzione equivarrebbe appunto a scrivere provaXml.firstChild.attributes.titolo.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.