Hallo!
Vor ein paar Tagen hab ich zu meiner grossen Erleichterung den Code "Ajax Inhalte mit PHP & Select nachladen" im Coder Wiki gefunden. Also erst mal herzlichen Dank dafür.
Klappt auch alles wunderbar, nur habe ich eine Frage zum Zurücksetzen.
Hier erst mal mein Anwendungsbeispiel (Suchmaske für meine Bilderdatenbank): ich hab ein Select-Feld mit dem Aufnahmeort 1 (aus der Tabelle aufnahmeort1). Abhängig von der Auswahl dieser Liste wird ein neu eingeblendetes zweites Select-Feld mit den detaillierten Aufnahmeorten 2 geladen (z.B. Aufnahmeort 1 = Deutschland --> Aufnahmeorte 2 = Berlin, Dortmund, Köln...).
Da es sich bei diesem Formular um die Suchmaske handelt, hab ich jetzt bei beiden Select-Feldern manuell noch eine Option "alle Aufnahmeorte" mit eingebunden.
Nach diesem Roman komme ich nun endlich zu meinem Problem: Ich krieg's mit meinen mangelhaften Javascript-Kenntnissen leider nicht hin, dass das zweite Select-Feld wieder ausgeblendet wird, wenn im ersten Feld "alle Aufnahmeorte" gewählt wurde. Kann mir jemand bitte einen Tipp geben, wie ich das anstellen könnte? Das wäre sehr nett.
Hier noch mein Code:
Alles anzeigen
und die func.php:
Alles anzeigen
Herzlichen Dank!
lg, michele[/quote]
Vor ein paar Tagen hab ich zu meiner grossen Erleichterung den Code "Ajax Inhalte mit PHP & Select nachladen" im Coder Wiki gefunden. Also erst mal herzlichen Dank dafür.
Klappt auch alles wunderbar, nur habe ich eine Frage zum Zurücksetzen.
Hier erst mal mein Anwendungsbeispiel (Suchmaske für meine Bilderdatenbank): ich hab ein Select-Feld mit dem Aufnahmeort 1 (aus der Tabelle aufnahmeort1). Abhängig von der Auswahl dieser Liste wird ein neu eingeblendetes zweites Select-Feld mit den detaillierten Aufnahmeorten 2 geladen (z.B. Aufnahmeort 1 = Deutschland --> Aufnahmeorte 2 = Berlin, Dortmund, Köln...).
Da es sich bei diesem Formular um die Suchmaske handelt, hab ich jetzt bei beiden Select-Feldern manuell noch eine Option "alle Aufnahmeorte" mit eingebunden.
Nach diesem Roman komme ich nun endlich zu meinem Problem: Ich krieg's mit meinen mangelhaften Javascript-Kenntnissen leider nicht hin, dass das zweite Select-Feld wieder ausgeblendet wird, wenn im ersten Feld "alle Aufnahmeorte" gewählt wurde. Kann mir jemand bitte einen Tipp geben, wie ich das anstellen könnte? Das wäre sehr nett.

Hier noch mein Code:
Quellcode
- <html><head>
- <script type="text/Javascript">
- <!--
- function sendRequest() {
- try {
- req = window.XMLHttpRequest?new XMLHttpRequest():
- new ActiveXObject("Microsoft.XMLHTTP");
- } catch (e) {
- //Kein AJAX Support
- }
- req.onreadystatechange = handleResponse;
- id = document.getElementById('dropdown').value;
- req.open('get', 'func.php?s='+ id);
- req.send(null);
- }
- function handleResponse() {
- if ((req.readyState == 4) && (req.status == 200)) {
- document.getElementById('inhalt').innerHTML = req.responseText;
- }
- }
- //-->
- </script>
- </head>
- <body>
- <select id="dropdown" onChange="sendRequest()">
- <?
- include 'functions.inc'; // (DB-Verbindung)
- $result = mysql_query("SELECT aufnahmeort1ID,aufnahmeort1 FROM `aufnahmeort1`; ");
- while($row = mysql_fetch_object($result))
- {
- echo '<option value="'.$row->aufnahmeort1ID.'">'.$row->aufnahmeort1.'</option>';
- }
- ?>
- </select>
- <div id="inhalt"></div>
- </body>
- </html>
und die func.php:
Quellcode
- <?
- //Inhalte laden
- $result = mysql_query("SELECT aufnahmeort2ID, aufnahmeort2 FROM `aufnahmeort2` WHERE `aufnahmeort1F` = $_GET[s]; ");
- ?>
- <p>
- Aufnahmeort 2:
- <select name="aufnahmeort2" class="select240">
- <option value="0" selected>alle Aufnahmeorte</option>
- <?
- while($row = mysql_fetch_object($result))
- {
- echo '<option value="'.$row->aufnahmeort2ID.'">'.$row->aufnahmeort2.'</option>';
- }
- ?>
- </select>
Herzlichen Dank!
lg, michele[/quote]