Hallo, ich habe ein Problem und im Forum keine geeignete Lösung gefunden. Mit folgender Funktion überprüfe ich ob im ersten Dropdown Menü etwas ausgewählt wurde, ansonsten gibts eine Meldung.
function chkFormular()
{
if(document.doppelmenue.stage1.value == "") {
alert("Bitte wählen Sie a aus");
document.doppelmenue.stage1.focus();
return false;
}
}
Mein Problem liegt nun darin, dass ich dies gern für das zweite Menü genauso machen würde, das zweite Menü aber je nach Auswahl im ersten Menü verschiedene Einträge liefert.
<!--Dropdown Menü a-->
<tr><td colspan=6>
<form name="doppelmenue" onSubmit="return chkFormular()">
<p><center><b>1. </b><select name="stage1" size="1" onChange="redirect(this.options.selectedIndex)">
<option selected value="">a auswählen </option>
<option value="1">1</option>
<option value="2">2</option>
</select></center></tr></td>
<!--Dropdown Menü b-->
<tr><td colspan=6><center><br><b>2. </b>
<select name="stage2" size="1">
<option selected value="">b auswählen </option></center>
</select>
</td></tr>
<script>
<!--
var groups=document.doppelmenue.stage1.options.length
var auswahl=new Array(groups)
for (i=0; i<groups; i++)
auswahl[i]=new Array()
auswahl[1][0]=new Option("")
auswahl[1][1]=new Option("1")
auswahl[1][2]=new Option("2")
auswahl[2][0]=new Option("")
auswahl[2][1]=new Option("3 ")
auswahl[2][2]=new Option("4")
var temp=document.doppelmenue.stage2
function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<auswahl[x].length;i++){
temp.options[i]=new Option(auswahl[x][i].text,auswahl[x][i].value)
}
temp.options[0].selected=true
}
function auswaehlen(){
location=temp.options[temp.selectedIndex].value
}
//-->
</script>
Wie kann ich es nun erreichen, dass der Anwender bei Nichtauswahl im zweiten Menü, also bei auswahl[1][0]=new Option("") eine Meldung bekommt?
Vielen Dank im voraus!
Gruß
Chris