title image


Smiley Problem den richtigen Index zufinden
Hallo Leute,



Ich habe drei Pulldown Felder die voneinander abhängig sind

Die ersten beiden gehen beim dritten brauche ich eure Hielfe.



Pulldown 1 (Typ): wir aus einer mysql Tabelle gefühlt z.B. (Typ 1 , Typ 2)



Pulldown 2 (Karte): Mittels PHP werden Array passen zu den Typen erzeugt

z.B arrKarte[0]=new Array("choose...","Karte 1","Karte 2","..."); arrKarte_id[0]=new Array("0","1","2","...");

arrKarte[1]=new Array("choose...","Karte 1","..."); arrKarte_id[1]=new Array("0","3","...")



wenn ich im Pulldown 1 Typ1 wähle zeigt er im Pulldown 2 Karte1 und Karte2 das funktioniert auch



Hier der passende Code dazu.



Quellcode:



function typ_karte()



{

// Liest den Index aus und zieht eins ab um damit direkt auf das Array zugreifen zu können

var iSelectedIndex=self.document.forms[0].typ_id.selectedIndex-1;

// Legt die Anzahl der Options fest - 1 wegen ,-Problem

self.document.forms[0].karte.options.length=arrKarte[iSelectedIndex].length-1;

for (var iCnt=0; iCnt<(arrKarte[iSelectedIndex].length-1); iCnt+=1)

{

// Value aus dem Array auslesen und in die Select-Box einfügen

self.document.forms[0].karte.options[iCnt].value=arrKarte_id[iSelectedIndex][iCnt];

self.document.forms[0].karte.options[iCnt].text=arrKarte[iSelectedIndex][iCnt];

}

}









Pulldown 3 Port: soll jetzt je nach dem welche Karte ausgewählt ist unterschiedlcihe Ports anzeigen.



dazu habe ich die Ports wieder in eine Array gelesen.



arrPort[0]=new Array("0","1","..."); arrPort_id[0]=new Array("1","2","...");

arrPort[1]=new Array("0","1","2","3","..."); arrPort_id[1]=new Array("15","16","17","19","...");

arrPort[2]=new Array("0","1","..."); arrPort_id[2]=new Array("3","4","...");



arrPort[0] gehört zu Karte 1 Typ1

arrPort[1] gehört zu Karte 2 Typ1

arrPort[2] gehört zu Karte 1 Typ2



Wenn ich Typ 1 wähle dann stimmt alles egal welche karte ich nehem ich bekomme dich richtigen Ports.

Nur bei Typ 2 bekomme ich auch die Ports von Typ 1

Das Probelm ist ziemlich sicher das er den Index nicht richtig zählt Karte1 von Typ1 hat auch den gleichen Index wie Karte 1 von Typ2.

Nur was und vorallem wie mache ich was dagegen.



Dazu noch den Code



Quellcode:



function typ_port()



{



// Liest den Index aus und zieht eins ab um damit direkt auf das Array zugreifen zu können

var iSelectedIndex=self.document.forms[0].karte.selectedIndex-1;

// Legt die Anzahl der Options fest - 1 wegen ,-Problem

self.document.forms[0].port.options.length=arrPort[iSelectedIndex].length-1;



for (var iCnt=0; iCnt<(arrPort[iSelectedIndex].length-1); iCnt+=1)

{

// Value aus dem Array auslesen und in die Select-Box einfügen

self.document.forms[0].port.options[iCnt].value=arrPort_id[iSelectedIndex][iCnt];

self.document.forms[0].port.options[iCnt].text=arrPort[iSelectedIndex][iCnt];

}

}









Besten Dank

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: