Dumme comboBox
Hej,Er der nogen, der er i stand til at fortælle mig hvorfor flg. problem opstår;
Jeg har anvendt nogle comboBox'e (Flash UI Components Set 1) til at vise nogle valgbare kategorier, hvor lables og data hentes fra en database via en asp-fil.
Dette har indtil videre også fungeret ganske tilfredstillende, lige indtil jeg loader denne swf-fil ind i en anden movies movieClip. Det sære er at det fungerer problemfrit så længe scriptet ligger i roden af af fil. På trods af at der intet sted i scriptet refereres til _root fungerer scriptet ikke, når det loades ind i et movieClip i en anden movie. Det eneste der så vises, er de første inaktive labels, så noget indlæses der, men hvorfor ikke det hele?
I'm lost :o(
comboBoxe'ene har instancenavnene: ageChoice, sexChoice og jobChoice
De ligger i et movieclip, der hedder inPutFields
Frame 1:
//Funktioner til at behandle data fra aspfilen choiceData.asp
function AgeDatHandler(){
strAgeData = this.strAgeData;
strAgeLabel = this.strAgeLabel;
}
function SexDatHandler(){
strSexData = this.strSexData;
strSexLabel = this.strSexLabel;
}
function JobDatHandler(){
strJobData = this.strJobData;
strJobLabel = this.strJobLabel;
}
//Hent variabler til ComboBox'ene,
//og fortæl at den hentede data skal behandles i ovenstående funktioner
mode = "ageChoice";
GetAgeChoice = new LoadVars();
GetAgeChoice.onLoad = AgeDatHandler;
GetAgeChoice.mode = this.mode;
GetAgeChoice.sendAndLoad("ASP/choiceData.asp",GetAgeChoice,"GET");
mode = "sexChoice";
GetSexChoice = new LoadVars();
GetSexChoice.onLoad = SexDatHandler;
GetSexChoice.mode = this.mode;
GetSexChoice.sendAndLoad("ASP/choiceData.asp",GetSexChoice,"GET");
mode = "jobChoice";
GetJobChoice = new LoadVars();
GetJobChoice.onLoad = JobDatHandler;
GetJobChoice.mode = this.mode;
GetJobChoice.sendAndLoad("ASP/choiceData.asp",GetJobChoice,"GET");
Frame 10:
//Her hentes modtagede variabelværdierne til comboBox'ene fra asp-filen
//og lægges i arrays sorteret efter label og data
AgeobjData = new Array();
AgeobjData = strAgeData.split(",");
AgeobjLabel = new Array();
AgeobjLabel = strAgeLabel.split(",");
SexobjData = new Array();
SexobjData = strSexData.split(",");
SexobjLabel = new Array();
SexobjLabel = strSexLabel.split(",");
JobobjData = new Array();
JobobjData = strJobData.split(",");
JobobjLabel = new Array();
JobobjLabel = strJobLabel.split(",");
// Værdierne fra arraysne der tidligere blev hentet fra asp-filen
// lægges her ind i nyt array og hvor "label-værdier"
// og "data-værdier" sammensættes.
i=0;
AgeDp = new Array();
while (i<AgeobjLabel.length) {
AgeDp[i] = {label: AgeobjLabel[i], data:AgeobjData[i]};
i++;
}
i=0;
SexDp = new Array();
while (i<SexobjLabel.length) {
SexDp[i] = {label: SexobjLabel[i], data:SexobjData[i]};
i++;
}
i=0;
JobDp = new Array();
while (i<JobobjLabel.length) {
JobDp[i] = {label: JobobjLabel[i], data:JobobjData[i]};
i++;
}
// Det forbydes at brugeren retter i de udskrevne værdier
//og ovenstående slutvariabler vælges som DataProvider
this.inPutFields.ageChoice.setEditable(false);
this.inPutFields.ageChoice.setDataProvider(AgeDp);
this.inPutFields.sexChoice.setEditable(false);
this.inPutFields.sexChoice.setDataProvider(SexDp);
this.inPutFields.jobChoice.setEditable(false);
this.inPutFields.jobChoice.setDataProvider(JobDp);
Det ville være helt fantastisk, hvis nogen kunne fortælle mig hvor jeg har dummet mig.
