Forum
Gehe zu: » Forum » HTML und Javascript » Problem mit selectbox
Seite: 1
Thema
Autor
Klickt man auf Deutschland und Nordrhein-Westfalen und Duisburg ist man in der 4. Ebene.
Es gibt nun ein Problem mit der 3. und 4. select box. Beide bleiben nämlich sichtbar zB wenn man danach in der 1. box auf Österreich klickt.
Das Problem besteht nicht mit der 2. box. Man kann in der 1. box zwischen Deutschland und Österreich wechseln und die 2. box wird jeweils vorher wieder geschlossen.
Ev. muss man ein onclick einbauen oder ... ? Wie schließt man die boxen denn eigentlich wieder ohne gleich neu zu laden?
<script type="text/javascript">
<!--
function hideSelect(obj) {
document.getElementById(obj.options[obj.selectedIndex].value).style.display = 'inline';
for (var i=1; i<obj.options.length; i++) {
if (i != obj.selectedIndex) {
document.getElementById(obj.options[i].value).style.display = 'none';
}
}
}
//-->
</script>
<select onchange="hideSelect(this)">
<option>Bitte wählen Sie aus!</option>
<option value="de">Deutschland</option>
<option value="at">Österreich</option>
</select>
<select onchange="hideSelect(this)" id="de" name="de" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option>Baden-Württemberg</option>
<option>Bayern</option>
<option>Berlin</option>
<option>Brandenburg</option>
<option>Bremen</option>
<option>Hamburg</option>
<option>Hessen</option>
<option>Mecklenburg-Vorpommern</option>
<option>Niedersachen</option>
<option value="nrw">Nordrhein-Westfalen</option>
<option>Rheinland-Pfalz</option>
<option>Saarland</option>
<option>Sachsen</option>
<option>Sachsen-Anhalt</option>
<option>Schleswig-Holstein</option>
<option>Thüringen</option>
</select>
<select onchange="hideSelect(this)" id="at" name="at" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option>Burgenland</option>
<option>Kärnten</option>
<option>Niederösterreich</option>
<option>Oberösterreich</option>
<option>Salzburg</option>
<option>Steiermark</option>
<option>Tirol</option>
<option>Vorarlberg</option>
<option>Wien</option>
</select>
<select onchange="hideSelect(this)" id="nrw" name="nrw" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option value="name">Duisburg</option>
<option>Essen</option>
<option>Mülheim</option>
<option>Oberhausen</option>
</select>
<select onchange="hideSelect(this)" id="name" name="name" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option>Georg</option>
<option>Georgine</option>
</select>
Es gibt nun ein Problem mit der 3. und 4. select box. Beide bleiben nämlich sichtbar zB wenn man danach in der 1. box auf Österreich klickt.
Das Problem besteht nicht mit der 2. box. Man kann in der 1. box zwischen Deutschland und Österreich wechseln und die 2. box wird jeweils vorher wieder geschlossen.
Ev. muss man ein onclick einbauen oder ... ? Wie schließt man die boxen denn eigentlich wieder ohne gleich neu zu laden?
<script type="text/javascript">
<!--
function hideSelect(obj) {
document.getElementById(obj.options[obj.selectedIndex].value).style.display = 'inline';
for (var i=1; i<obj.options.length; i++) {
if (i != obj.selectedIndex) {
document.getElementById(obj.options[i].value).style.display = 'none';
}
}
}
//-->
</script>
<select onchange="hideSelect(this)">
<option>Bitte wählen Sie aus!</option>
<option value="de">Deutschland</option>
<option value="at">Österreich</option>
</select>
<select onchange="hideSelect(this)" id="de" name="de" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option>Baden-Württemberg</option>
<option>Bayern</option>
<option>Berlin</option>
<option>Brandenburg</option>
<option>Bremen</option>
<option>Hamburg</option>
<option>Hessen</option>
<option>Mecklenburg-Vorpommern</option>
<option>Niedersachen</option>
<option value="nrw">Nordrhein-Westfalen</option>
<option>Rheinland-Pfalz</option>
<option>Saarland</option>
<option>Sachsen</option>
<option>Sachsen-Anhalt</option>
<option>Schleswig-Holstein</option>
<option>Thüringen</option>
</select>
<select onchange="hideSelect(this)" id="at" name="at" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option>Burgenland</option>
<option>Kärnten</option>
<option>Niederösterreich</option>
<option>Oberösterreich</option>
<option>Salzburg</option>
<option>Steiermark</option>
<option>Tirol</option>
<option>Vorarlberg</option>
<option>Wien</option>
</select>
<select onchange="hideSelect(this)" id="nrw" name="nrw" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option value="name">Duisburg</option>
<option>Essen</option>
<option>Mülheim</option>
<option>Oberhausen</option>
</select>
<select onchange="hideSelect(this)" id="name" name="name" style="display:none">
<option>Bitte wählen Sie aus!</option>
<option>Georg</option>
<option>Georgine</option>
</select>
Dieser Beitrag wurde schon 1x bearbeitet.
Zuletzt am 21.03.2010 06:20:43 von micki.
Zuletzt am 21.03.2010 06:20:43 von micki.
Hallo,
ich würd ein Array erstellen mit allen offenen Boxen.
Dann beim Aufruf von hideSelect auch noch die Ebene angeben: z.B. 2 für Bundesländer.
Wählt man jetzt ein anderes Bundsland an, sollten alle Boxen Ebene 2 einfach geschlossen werden.
Oder schau dir einfach mal das an:
http://www.dhtmlgoodies.com/index.html?whichScript=ajax_chained_select
Grüße Patrick
ich würd ein Array erstellen mit allen offenen Boxen.
Dann beim Aufruf von hideSelect auch noch die Ebene angeben: z.B. 2 für Bundesländer.
Wählt man jetzt ein anderes Bundsland an, sollten alle Boxen Ebene 2 einfach geschlossen werden.
Oder schau dir einfach mal das an:
http://www.dhtmlgoodies.com/index.html?whichScript=ajax_chained_select
Grüße Patrick
Seite: 1
Statistik
Es wurden insgesamt 2156 Beiträge geschrieben.
Wir haben 10450 registrierte Mitglieder.
Der neueste Benutzer ist Sasha - Forum Beta³ - Bug melden
Wir haben 10450 registrierte Mitglieder.
Der neueste Benutzer ist Sasha - Forum Beta³ - Bug melden
Beitrag von

