Kann mir jemand die Funktion: "window.location=parseURL()" erklären?
Die Funktion ist irgendwo in der Seite oder in damit verbundenen Dateien im Quelltext abgelegt. Schaue dort nach.
Sobald ich das erste Select-Feld änder lädt die Seite Neu und die URL geht von "index.php?action=test" auf z.B. "index.php?action=test&type=1".
Dann erst wird das zweite Select-Feld freigeschaltet. Wie funktioniert das?
Steht doch schon fast alles da:
<select name="type" onchange="window.location=parseURL(('index.php?action=test&type='+this.options[this.selectedIndex].value)+'#test')">
Bei einer Änderung (onChange) dieses Feldes wird eine neue Seite geladen (window.location=…). Die neue URL enthält dabei als Parameter type den Wert dieses Feldes ('…&type=' + this.options[this.selectedIndex].value).
In index.php wird je nach Parameter type das zweite Feld mit entsprechenden Werten gefüllt. Das sieht vielleicht so aus:
switch ($_GET["type"]) {
case "1":
$type = 1;
$places = Array("Hamburg", "Berlin", "München");
break;
case "2":
$type = 2;
$places = Array("New York", "Los Angeles", "Dallas");
break;
case "3":
$type = 3;
$places = Array("Sonne", "Mond", "Sterne");
break;
default:
$type = 0;
$places = Array();
}
echo '<select name="place" onchange="window.location=parseURL((';
echo htmlspecialchars("'index.php?action=test&type=" . $type . "&id='+this.options[this.selectedIndex].value)+'#test'";
echo ')"';
if ($type == 0) {
echo ' disabled>';
}
echo '<option value="0">Bitte wählen</option>';
foreach ($places as $i => $a) {
echo '<option value="' . $i . '">' . htmlspecialchars($places[$i]) . '</option>';
}
Was die Funktion parseURL() da nun zwischen soll, weiß ich nicht, aber der Code oder ein Verweis darauf ist ja wie gesagt irgendwo im Quelltext zu finden.