Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-11-2004, 16:36   #1 (permalink)
Eternal Newbe
 
Registriert seit: Aug 2002
Ort: Heidelberg
Beiträge: 241
Lightbulb Array filtern

Ich möchte eine ComboBox füllen mit einer Liste an Items und wenn dort eine Auswahl getroffen wurde, soll anhand derer in einer weiteren ComboBox eine Auswahl von Items gezeigt werden, welche mit der Auswahl der ersten in Verbindung stehen. - Quasi eine Art Submenü.

z.B.
1. ComboBox:
- Volkswagen
- Audi
- Porsche

... und wenn man Audi auswählen würde, wird in der zweiten Combo folgendes angezeigt:

2. ComboBox:
- A2
- A3
- A4

Es müsste klar geworden sein, wass ich will.

Ich hatte mir gedacht, dass ich im ersten ein Array (VW, Audi...) habe mit den Firmen und nach der Auswahl ein zweites Array nach den Firmen gefiltert wird und diese in die Combo gefüllt werden.

Frage: Wie kann ich ein Array am einfachsten filtern?
__________________
JuL!
JuL! ist offline   Mit Zitat antworten
Alt 10-11-2004, 16:56   #2 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
oder nimm ein 2d-array:

autos=[["hersteller1","wagen1","wagen2"],["hersteller2","wagen1","wagen2","wagen3","wage n4"],["hersteller3","wagen1","wagen2","wagen3"]]
auflisten kannste die hersteller mit
ActionScript:
  1. for (i=0; i<autos.length; i++) {
  2.     trace(autos[i][0])
  3. }
filtern mit:
ActionScript:
  1. hersteller = "hersteller2";
  2. for (i=0; i<autos.length; i++) {
  3.     if (autos[i][0] == hersteller) {
  4.         trace("hersteller: "+autos[i][0]);
  5.         for (j=1; j<autos[i].length; j++) {
  6.             trace("auto: "+autos[i][j]);
  7.         }
  8.         break;
  9.     }
  10. }

fällt mir zumindest auf anhib dazu ein
grüße.
smirgel.
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 10-11-2004, 18:41   #3 (permalink)
Eternal Newbe
 
Registriert seit: Aug 2002
Ort: Heidelberg
Beiträge: 241
Arrow

Danke Smirel, aber das trifft das Problem noch nicht ganz. Ich meine dies so:

Array1 = (["Audi","1"],["BMW","2"],["Skoda","3"],["Mercedes","4"]["Opel","5"])

Array2 = (["Brennstoffzelle","2","3"],["Diesel","1","3","4","5"],["Cabrio","2","4","5"])

Nun ist die erste Combo gefüllt mit: Audi, BMW, Skoda, Mercedes, Opel

... wenn ich nun BMW auswähle wird in dem zweiten Array geprüft, wo "3" enthalten ist. Das Ergebnis ist, dass in zwei Einträge gefunden werden. Somit wird in der zweiten Combo die Auflistung: Brennstoffzelle und Diesel angezeigt.

Zu erwähnen ist, dass dies nur ein Beispiel ist. Eigenlich sind es im ersten ca. 300 Einträge und im zweiten entsprechend mehr.
__________________
JuL!
JuL! ist offline   Mit Zitat antworten
Alt 10-11-2004, 19:01   #4 (permalink)
Eternal Newbe
 
Registriert seit: Aug 2002
Ort: Heidelberg
Beiträge: 241
Nein, ich habe gerade nochmal darüber nachgedacht. Eigentlich hast Du [smirgel] es ja schon richtig gesagt. Man muss das nur etwas umstellen.
__________________
JuL!
JuL! ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:50 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele