Prøv det:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd"><HTML>
<HEAD>
<TITLE>Fem afhængige select-boxe</TITLE>
<META NAME="keywords" CONTENT="roenving;
http://www.eksperten.dk/spm/363512"><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<SCRIPT LANGUAGE="javascript" TYPE="text/javascript">
var valg =new Array();
/* Normalt ville alt være indtastet på en eller anden måde, som f.eks.:
valg5[0] = new Array();
valg5[0][0] = new Array();
valg5[0][0][0] = new Array();
valg5[0][0][0][0] = new Array();
valg5[0][0][0][0][0] = '5. boks, nr 1: 1 1 1 1 i de andre';
valg5[0][0][0][0][1] = '5. boks, nr 2: 1 1 1 1 i de andre';
valg5[0][0][0][1] = new Array();
valg5[0][0][0][1][0] = '5. boks, nr 1: 1 1 1 2 i de andre';
valg5[0][0][0][1][1] = '5. boks, nr 2: 1 1 1 2 i de andre';
...
valg5[0][0][1] = new Array();
valg5[0][0][1][0] = new Array();
valg5[0][0][1][0][0] = '5. boks, nr 1: 1 1 2 1 i de andre';
valg5[0][0][1][0][1] = '5. boks, nr 2: 1 1 2 1 i de andre';
valg5[0][0][1][1] = new Array();
valg5[0][0][1][1][0] = '5. boks, nr 1: 1 1 2 2 i de andre';
valg5[0][0][1][1][1] = '5. boks, nr 2: 1 1 2 2 i de andre';
osv...
-- her er jeg lidt doven og generer det dynamisk ...
Ialt skal der her være næsten 4000 tekster -- bare det er for meget, hvis man ikke skal bruge det
*/
var valg1 = ['Første Valgt','Anden Valgt','Tredje Valgt','Fjerde Valgt','Femte Valgt'];
var valg2 = new Array;
var valg3 = new Array;
var valg4 = new Array;
var valg5 = new Array;
function init(){
var akt = document.minForm.minSelect0;
for (i=0;5>i;i++){
valg2[i] = new Array();
akt.options[i+1].value = ""+(i+1);
akt.options[i+1].text = valg1[i];
for (j=0;5>j;j++){
valg2[i][j] = '2. boks, nr. '+(j+1)+': '+(i+1)+' i den første';
}
}
alert
for (i=0;5>i;i++){
valg3[i] = new Array();
for (j=0;5>j;j++){
valg3[i][j] = new Array();
for (k=0;5>k;k++){
valg3[i][j][k] = '3. boks, nr. '+(k+1)+': '+(i+1)+' '+(j+1)+' i de første';
}
}
}
for (i=0;5>i;i++){
valg4[i] = new Array();
for (j=0;5>j;j++){
valg4[i][j] = new Array();
for (k=0;5>k;k++){
valg4[i][j][k] = new Array();
for(l=0;5>l;l++){
valg4[i][j][k][l] = '4. boks, nr. '+(l+1)+': '+(i+1)+' '+(j+1)+' '+(k+1)+' i de første';
}
}
}
}
for (i=0;5>i;i++){
valg5[i] = new Array();
for (j=0;5>j;j++){
valg5[i][j] = new Array();
for (k=0;5>k;k++){
valg5[i][j][k] = new Array();
for(l=0;5>l;l++){
valg5[i][j][k][l] = new Array();
for(m=0;5>m;m++){
valg5[i][j][k][l][m] = '5. boks, nr. '+(m+1)+': '+(i+1)+' '+(j+1)+' '+(k+1)+' '+(l+1)+' i de første';
}
}
}
}
}
}
var akt = "";
function change(nr){
var valgt = new Array();
for (i=0;4>i;i++){
valgt[i] = eval('document.minForm.minSelect'+i+'.selectedIndex');
}
akt = eval('document.minForm.minSelect'+nr);
switch (nr){
case 1:
if (valgt[0]>0){
for (i=1;6>i;i++){
akt.options[i].value = ""+i;
akt.options[i].text = valg2[valgt[0]-1][i-1];
}
change(2);
}
case 2:
if (valgt[0]*valgt[1]>0){
for (i=1;6>i;i++){
akt.options[i].value = ""+i;
akt.options[i].text = valg3[valgt[0]-1][valgt[1]-1][i-1];
}
change(3);
}
case 3:
if (valgt[0]*valgt[1]*valgt[2]>0){
for (i=1;6>i;i++){
akt.options[i].value = ""+i;
akt.options[i].text = valg4[valgt[0]-1][valgt[1]-1][valgt[2]-1][i-1];
}
change(4);
}
case 4:
if (valgt[0]*valgt[1]*valgt[2]*valgt[3]>0){
for (i=1;6>i;i++){
akt.options[i].value = ""+i;
akt.options[i].text = valg5[valgt[0]-1][valgt[1]-1][valgt[2]-1][valgt[3]-1][i-1];
}
}
}
}
</SCRIPT>
</HEAD>
<BODY ONLOAD="init()">
<H1>5 afhængige select-boxe</H1><BR>
<HR STYLE="border:dashed;font-stretch:wider;color:#000;"</HR>
<FORM ID="minForm" NAME="minForm">
<BR>
<BR>
<SELECT NAME="minSelect0" ID="minSelect0" ONCHANGE="change(1)">
<OPTION VALUE="">-- Vælg her --<BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
</SELECT><BR><BR>
<SELECT NAME="minSelect1" ID="minSelect1" ONCHANGE="change(2)">
<OPTION VALUE="">-- Vælg her --<BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
</SELECT><BR><BR>
<SELECT NAME="minSelect2" ID="minSelect2" ONCHANGE="change(3)">
<OPTION VALUE="">-- Vælg her --<BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
</SELECT><BR><BR>
<SELECT NAME="minSelect3" ID="minSelect3" ONCHANGE="change(4)">
<OPTION VALUE="">-- Vælg her --<BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
</SELECT><BR><BR>
<SELECT NAME="minSelect4" ID="minSelect4" ONCHANGE="">
<OPTION VALUE="">-- Vælg her --<BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
<OPTION VALUE=""><BR>
</SELECT><BR><BR>
<BR>
<BR>
<BR>
</FORM>
<BR>
<BR>
</BODY>
</HTML>
hth
jes '-)