Sehr geehrtes Forum,
nach mehrtägiger Suche im englischen wie deutschen Internet habe ich nach wie vor keine Lösung für mein Problem gefunden und wende mich nun an dieses Forum.
Zur Grundidee: ein variabler Link in einem Formular-Button, dessen Inhalt über den User-Input (mehrere Drop-Down-Menüs im Formular) festegelegt wird um in einer komplexen Ordnerstruktur abgelegte Dokumente für den User zugänglich zu machen
function test(menu1,menu2){
switch(menu1.value)
{
case "A":
var folder = "X";
var year = "Y";
var start = "Z";
switch(menu2.value)
{
case "A":
var month = "111";
break;
case "B":
var month = "222";
break;
case "C":
var month = "333";
break;
default:
var month = "110";
}
break;
case "B":
var folder = "U";
var year = "V";
var start = "W";
switch(menu2.value)
{
case "A":
var month = "444";
break;
case "B":
var month = "555";
break;
case "C":
var month = "666";
break;
default:
var month = "440";
}
break;
default:
var folder = "X1";
var year = "Y1";
var start = "Z1";
}
location.href='directory/'+folder+'/'+year+'/'+month+'/'+start+'';
}
Und dies ist das dazugehörige Formular:
<form name="menufrm">
<select name="menu1">
<option>A</option>
<option>B</option>
</select>
<select name="menu2">
<option>A</option>
<option>B</option>
<option>C</option>
</select>
<input value="Browse" onclick="test(menu1,menu2)"
type="button">
Das Script funktioniert im Firefox wunderbar. Die Einzelfälle werden geparst und je nach Auswahl des Users wird der Pfad im Button zusammengesetzt. Der Internet Explorer im Gegensatz scheint über meine formulierten "cases" hinwegzugehen und substituiert lediglich die Variablen, die unter default: am Ende definiert sind. Alle anderen Variablen, auch wenn sie über die Auswahl des Users und den "case" definiert wurden, bleiben "undefined".
Ich bin im Bereich Javascript Anfänger. Muss ich für den IE noch etwas am Anfang definieren? Versteht der IE switches? Warum schaut sich der IE die "cases" nicht an? Ich bin mir sicher, dass der Fehler irgendwo in meinem Script liegt.
Any help would be appreciated.
Christian