Originariamente inviato da meffe
ma con il listener dovrebbe aggiornarsi automaticamente la voce giusto?
c'è qualcuno che si intende di combobox che sa dirmi cos'è sbagliato in questo script?
meffe
boh nn ho molto tempo x controllare il tuo script ma x popolare una combo da un file xml
si può fare anche una cosa del genere
suponendo che il file xml sia fatto cosi
Codice PHP:
<Nome id="1"/><item>prima voce</item>
<Nome id="2"/><item>seconda voce</item>
<Nome id="3"/><item>terza voce</item>
<Nome id="4"/><item>quarta voce</item>
<Nome id="5"/><item>quinta voce</item>
nel flash
Codice PHP:
System.useCodepage = true;
filexml = "creaCombo.xml";
ApriXML();
function ApriXML () {
_root.loading = "Connecting to XML ...";
mioxml = new XML();
myarray = new Array();
mioxml.load(filexml)
//mioxml.load(filexml + "&rnd=" + random(999999));
mioxml.onLoad = ElaboraXML;
function ElaboraXML (success) {
if (mioxml.loaded) {
myarray = mioxml.childNodes;
Dati();
CreaCombo();
delete myarray;
delete mioxml;
}
};
};
// Funzione che prende i dati XML e li mette in degli Array
function Dati () {
// Array che contengono i Dati -----------------------
idItem = new Array();
item = new Array();
// ---------------------------------------------------
for (k=0; k<=myarray.length; k++) {
if (myarray[k].nodeName == "Nome") {
idItem.push(myarray[k].attributes.id);
} else if (myarray[k].nodeName == "item") {
item.push(myarray[k].childNodes.toString());
}
//trace(Dettaglio)
};
};
// funzione che mette i dati nella combo
function CreaCombo(){
trace(item)
prova.addItem("");
for (i=0; i<idItem.length; i++){
prova.addItem(item[i]);
}
}
listenerObject = new Object();
listenerObject.change = function(eventObject){
// Inserire qui il codice
var obj = prova.selectedItem;
trace("È stato selezionato il valore: " + obj.label);
selezione=obj.label
}
prova.addEventListener("change", listenerObject)
quindi la tua var sarebbe selezione