Moin!
Folgende Situation: Auf einer Seite habe ich 2 Listenfelder. Bei Auswahl eines Eintrages im ersten Listenfeld ändern sich die Optionen des zweiten, d.h. die Auswahlmöglichkeiten im zweiten sind abhängig davon,welcher Eintrag im erstem angewählt wurde (durch Aufruf einer Funktion mit OnChange beim ersten Listenfeld). Es funktioniert bestens in IE und NS6.2. Nur im Netscape 4.7 klappt's nicht, denn hier liefert document.auswahl.branche.value immer den Wert 'null' zurück.
Der Quelltext:
Javascript:
function fuellen_schlagwort()
// füllt das Schlagwort-feld mit den zur Branche gehörenden Schlagwörtern
{
document.auswahl.schlagwort.length = 0;
NeuerEintrag = new Option("Alle","Alle",false,false);
document.auswahl.schlagwort.options[0] = NeuerEintrag;
for (var loop = 0; loop < branchen[document.auswahl.branche.value].length; loop++)
{
NeuerEintrag = new Option(branchen[document.auswahl.branche.value][loop],branchen[document.auswahl.branche.value][loop],false,false);
document.auswahl.schlagwort.options[loop+1] = NeuerEintrag;
if (document.auswahl.schlagwort.options[loop+1].value == "<? print($gewaehltes_schlagwort); ?>") document.auswahl.schlagwort.options[loop+1].selected = true;
}
}
function fuellen_branche()
// füllt das Branchen-Feld
{
document.auswahl.branche.length = 0;
var counter=0;
for (var titel in branchen)
{
NeuerEintrag = new Option(titel,titel,false,false);
document.auswahl.branche.options[counter] = NeuerEintrag;
if (titel == "<? print($gewaehlte_branche); ?>") document.auswahl.branche.options[counter].selected = true;
counter = counter + 1;
}
}
(bischen PHP ist auch mit drin - spielt hier keine Rolle)
Das Formular:
<form name="auswahl" method="post" action="suche.php">
<select name="branche" style="width:130px" onChange="fuellen_schlagwort(); document.auswahl.schlagwort.focus();">
<option>1234567890123456789012</option>
</select>
</td>
</tr>
<tr valign="top">
<td valign="center">Schlagwort</td>
<td valign="middle">
<select name="schlagwort" style="width:130px">
<option>1234567890123456789012</option>
</select>
</td>
<td valign="top">
<div align="right">
<input type="image" src="images/go_5.gif" width="30" height="30" border="0" alt="Suche beginnen"></input>
</div>
</td>
</tr>
</form>
<script language="javascript">
fuellen_branche();
fuellen_schlagwort();
</script>
Sorry wenn die Formatierung hier etwas unübersichtlich sein sollte. Die Einträge stammen aus einem ausgelagertem JS-Array (mach die Sache sicher auch nicht übersichtlicher ;-)). Wie gesagt, nur unter NS4.7 klappt's nicht. Wäre nett wenn mir da jemand weiterhelfen könnte.
Besten Dank im Voraus !