Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    101

    navigare e cicli for su xml

    Ciao a tutti
    spero che qualcuno possa aiutarmi

    Io ho un XML di questo tipo

    <Cat l='ITALIANO' n='m3' e='e3' >
    <Tav id='01_0'>
    <Reg id='1'>
    <dati o='149201' p='' l='cemento' m='0'/>
    </Reg>
    <Reg id='2'>
    <dati o='220204' p='' l='armatura' m='0'/>
    </Reg>
    </Tav>
    <Tav id='02_0'>
    <Reg id='1'>
    <dati o='170700S' p='' l='foto' m='0'/>
    </Reg>
    <Reg id='2'>
    <dati o='183201' p='' l='righello' m='0'/>
    </Reg>
    </Tav>
    </Cat>

    e ho due listbox "lista_tav" dove andranno caricate tutti gli attributi "Id" del tag <tav> e un listbox "lista_rif" dove quando seleziono un determinato nodo <tav> mi visualizzi tutti i fgli <rif> che gli stanno sotto

    Io riesco a riempire il primo list box ossia con l'elenco degli "id" di <tav>, ma poi sulla selezione non riesco ad caricare la seconda lista

    Il codice per riempire la prima è questo
    ================================================== ==================
    dati_xml.onLoad = function(success)
    {
    this.path.lista_tav.removeAll();
    if(success){
    var catalogo = this.firstChild.childNodes;
    for(var i = 0; i < catalogo.length; i++){
    var tav = catalogo[i].attributes.id;
    this.path.lista_tav.addItemAt(i, tav);
    }
    this.path.lista_tav.setChangeHandler("aggiorna");
    this.path.aggiorna = function(component)
    {

    //????????????????Ho fatto tentativi ma inutili

    };
    } else {
    this.path.lista_tav.addItem("lista non disponibile");
    this.path.lista_tav.setEnabled(false);
    }
    };
    ================================================== =======
    Praticamente ho caricato il primo listbox con "var tav" e q quello dovrei aggiungere un oggetto con tutti i <rif> e i vari attributi che gli stanno sotto i modo da spedirli al secondo listbox i l quale li può caricare.

    Come posso fare

    Grazie

  2. #2
    usi i componenti di MX o MX2004?

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  3. #3
    sto provando con il componente MX, ma non ho capito bene cosa vuoi mettere nel listBox lista_rif

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    101
    Ciao e grazie Yassasin.
    Cavolo, lavori anche il primo di maggio? sei un staccanovista.

    Ho cambiato l'xml per semplificarlo un pò almeno credo.

    <Cat l="" m="" n="">
    <Tav id="01" desc="pippo">
    <Reg id="01" co="" de="" spe="" sig="">
    <Reg id="02" co="" de="" spe="" sig="">
    <Reg id="03" co="" de="" spe="" sig="">
    </Tav>
    <Tav id="02" desc="pippo">
    <Reg id="01" co="" de="" spe="" sig="">
    <Reg id="02" co="" de="" spe="" sig="">
    </Tav>
    </Cat>

    Praticamente dovrei creare due listbox con FlashMX (6)
    La prima è lista_tav la quale carica gli attributi del nodo <Tav>
    La seconda è lista_reg che al lista_tav.setChangeHandler carica i nodi figlio con attributi di <Tav> ossia <Reg>.
    A questo punto al lista_reg.setChangeHandler (seconda lista)devo poter caricare i dati di quel Item in un carrello ordini.

    Il mio primo Problema è stato quello di fare un ciclo for per caricare la seconda lista ossia lista_reg.
    L'altra cosa che non riesco a capire è se c'è un modo di prepare i dati in variabili prima per poi dire ad ogni listbox quali variabili deve caricare e quali deve inviare ad ogni setChangeHandler.

    Spero di essere stato chiaro.

    Grazie

  5. #5
    Originariamente inviato da albertsili
    Ciao e grazie Yassasin.
    Cavolo, lavori anche il primo di maggio? sei un staccanovista.
    :adhone: per me tutti i giorni sono uguali...


    Originariamente inviato da albertsili
    Ho cambiato l'xml per semplificarlo un pò almeno credo.

    <Cat l="" m="" n="">
    <Tav id="01" desc="pippo">
    <Reg id="01" co="" de="" spe="" sig="">
    <Reg id="02" co="" de="" spe="" sig="">
    <Reg id="03" co="" de="" spe="" sig="">
    </Tav>
    <Tav id="02" desc="pippo">
    <Reg id="01" co="" de="" spe="" sig="">
    <Reg id="02" co="" de="" spe="" sig="">
    </Tav>
    </Cat>

    Praticamente dovrei creare due listbox con FlashMX (6)
    La prima è lista_tav la quale carica gli attributi del nodo <Tav>
    La seconda è lista_reg che al lista_tav.setChangeHandler carica i nodi figlio con attributi di <Tav> ossia <Reg>.
    A questo punto al lista_reg.setChangeHandler (seconda lista)devo poter caricare i dati di quel Item in un carrello ordini.

    Il mio primo Problema è stato quello di fare un ciclo for per caricare la seconda lista ossia lista_reg.
    L'altra cosa che non riesco a capire è se c'è un modo di prepare i dati in variabili prima per poi dire ad ogni listbox quali variabili deve caricare e quali deve inviare ad ogni setChangeHandler.

    Spero di essere stato chiaro.

    Grazie
    nella lista_reg ci vanno tutti gli attributi del tag Reg? :master:

    cmq ho il fla a casa con i codici già pronti... mo nun c'ho voglia di rifare tutto...

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    101
    nella lista_reg ci vanno tutti gli attributi del tag Reg?
    Si, praticamente quando clicco su un nodo <Tav> vorrei visualizzare in lista_reg tuttti i suoi figli con attributi.
    esempio con l'xml scritto.

    lista_tav:

    01,pippo
    02,pippo

    Se setChangeHandler su 01,pippo allora il lista_reg devo visualizzare:

    01,,,,
    02,,,,
    03,,,,

    cmq ho il fla a casa con i codici già pronti... mo nun c'ho voglia di rifare tutto...
    Si hai ragione, comunque quel codice che hai preparato mi può far capire il concetto di gestire dati xml su più listbox.

    Grazie ancora

  7. #7
    Originariamente inviato da albertsili

    Si hai ragione, comunque quel codice che hai preparato mi può far capire il concetto di gestire dati xml su più listbox.

    Grazie ancora
    te lo posto dopo pranzo

    in pratica leggo il file xml e salvo tutti i dati nei array, quindi una volta scelto un valore dalla lista_tav mi visualizza i rispettivi valori nella lista_reg

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    101
    Grazie mille.

    Poi per creare un carrello ordini da quello che ho potuto leggere in varie documentazioni, la cosa migliore è quella di creare un xml
    esempio

    myXML = new XML();
    ordine = myXML.createElement("ordine");
    ordine.attribute.id = "var id inviata da list_reg";
    ordine.attribute.co = "var co inviata da list_reg";
    ordine.attribute.de = "var de inviata da list_reg";
    ordine.attribute.spe = "var spe inviata da list_reg";
    myXML.appendChild(ordine);

    Secondo tè come procedimento teorico può andare?

  9. #9
    Originariamente inviato da albertsili
    Grazie mille.

    Poi per creare un carrello ordini da quello che ho potuto leggere in varie documentazioni, la cosa migliore è quella di creare un xml
    esempio

    myXML = new XML();
    ordine = myXML.createElement("ordine");
    ordine.attribute.id = "var id inviata da list_reg";
    ordine.attribute.co = "var co inviata da list_reg";
    ordine.attribute.de = "var de inviata da list_reg";
    ordine.attribute.spe = "var spe inviata da list_reg";
    myXML.appendChild(ordine);

    Secondo tè come procedimento teorico può andare?
    non mi risulta questa cosa. L'oggetto XML serve per leggere i dati da un file xml, non per salvarli :master:

    Gli ordini ti conviene conservarli in un array, poi quando l'utente decide di inviare l'ordine li mandi ad una pagina server side (php o asp) con l'oggetto LoadVars() e li te li gestisci al meglio (magari salvando tutto in un database).

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    101
    Il fatto di creare un ordine in XML deriva dal fatto che possono essere inviati ad un pagina asp e fino a quando non vengono inviati, si visualizzao comodamente in un listbox o in un datagrid.

    Comunque, leggevo che per aggiungere record in un xml si utilizza
    ordine = myXML.createElement("ordine");
    ordine.attributes.id = id;
    ordine.attributes.co = co;
    ordine.attributes.de = de;
    ordine.attributes.spe = spe;
    elenco_ordine.appendChild(ordine);

    Se invece creo un Array, come riesco ad aggiungere un ordine?
    Gli attributi dell'ordine sono separati da "," ?
    Provo a cercare qualcosa sulle guide.

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.