Dropdownmenü als Link?
Spakko
- javascript
Hallo, habe folgendes Problem:
Ich habe ein Dropdown-Menü in einem PHP-Formular, das bei Anwahl von Punkt_A ein verstecktes Element (Punkt_D) sichtbar machen soll- Punkt_B macht das Feld wieder unsichtbar.
Bei verscheidenen Browsern funktioniert diese Technik aber unterschiedlich:
Kann mir jemand sagen, wie ich meine gewünschte Funktion für alle Browser kompatibel mache? Ich bitte auch um konkrete Programmbeispiele, da ich noch nicht so fit darin bin.
Hier mein Code:
<select size="1" name="Auswahl">
<option value="">..bitte wÃhlen..</option>
<option value="Punkt_A" onclick="document.getElementById('Punkt_D').style.display=this.checked?'block':'block';">Punkt_A</option>
<option value="Punkt_B" onclick="document.getElementById('Punkt_D').style.display=this.checked?'none':'none';">Punkt_B</option>
</select>
...
<div id="Punkt_D" style="display: none">
</div>
Danke Euch schon mal für Eure Mühe
Spakko
Hi,
- in Opera funktioniert auch das un-/sichtbar machen, jedoch erscheint das Auswahlmenü nicht direkt bei dem Dropdownfeld, sondern ettliche Zentimeter darunter (ob es was damit zu tun hat, dass ich das Formular in einem iFrame habe?)
Opera kann manchmal etwas bitchy sein, was absolute Positionierung mit relativem Bezug angeht. Aber ohne zu sehen, was du gemacht hast (und ob ueberhaupt positioniert), kann man dazu kaum mehr sagen.
- IE oder Maxthon ignorieren den Aufklapp-Befehl komplett.
Der IE feuert kein onclick auf option-Elementen. Nutze onchange auf dem select.
(Und Maxthon ist kein eigenstaendiger Browser, sondern setzt auf der Engine des IE auf.)
MfG ChrisB
Hallo ChrisB,
hmm, absolut ist nichts positioniert, zumindest nicht bewußt.
Meinst Du das Dropdaownmenü selbst? Der Code ist exakt angegeben. Auch imm CSS ist keine absolute positionierung. Im PHP-Dokument habe ich eine Tabelle mit Überschriften in der linken und den Formularfeldern auf der rechten Spalte. Die width-Angabe der Tabelle ist auf 100% und eine der Spalten hat eine feste Pixelbreite.
Ich weiß, dass Maxthon auf dem IE aufsetzt. Interpretiert er denn exakt gleich die Internetseiten oder kann er Abweichungen haben. Ist er denn damit auch genauso unsicher?
werde onchange ausprobieren, danke.
Spakko
Hi,
- in Opera funktioniert auch das un-/sichtbar machen, jedoch erscheint das Auswahlmenü nicht direkt bei dem Dropdownfeld, sondern ettliche Zentimeter darunter (ob es was damit zu tun hat, dass ich das Formular in einem iFrame habe?)
Opera kann manchmal etwas bitchy sein, was absolute Positionierung mit relativem Bezug angeht. Aber ohne zu sehen, was du gemacht hast (und ob ueberhaupt positioniert), kann man dazu kaum mehr sagen.
- IE oder Maxthon ignorieren den Aufklapp-Befehl komplett.
Der IE feuert kein onclick auf option-Elementen. Nutze onchange auf dem select.
(Und Maxthon ist kein eigenstaendiger Browser, sondern setzt auf der Engine des IE auf.)MfG ChrisB
Also, habe onclick durch onchange ersetzt, nun tut sich in keinem Browser etwas
Der IE feuert kein onclick auf option-Elementen. Nutze onchange auf dem select.
Hi,
Also, habe onclick durch onchange ersetzt, nun tut sich in keinem Browser etwas
Natuerlich - auf option ist onchange bloedsinnig, die option aendert sich ja nicht.
MfG ChrisB
Wo soll ich denn dann eine Abfrage setzen? Auf Select ode wo?
Falls ja auf Select, dann versteh ich nicht, wie ich es hinkriege, dass ein unsichtbares Feld bei einem bestimmten Menüpunkt sichtbar wird und bei allen anderen unsichtbar.
Bitte schickt mir einen Mustercode, damit ich Eure Lösung besser nachvollziehen kann.
Spakko
Hi,
Also, habe onclick durch onchange ersetzt, nun tut sich in keinem Browser etwas
Natuerlich - auf option ist onchange bloedsinnig, die option aendert sich ja nicht.
MfG ChrisB
Hi,
Wo soll ich denn dann eine Abfrage setzen? Auf Select ode wo?
Schrieb ich doch bereits, oder?
Bitte schickt mir einen Mustercode, damit ich Eure Lösung besser nachvollziehen kann.
http://de.selfhtml.org/javascript/objekte/options.htm
MfG ChrisB
Falls von Interesse:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
stehen in meinem Header!
Spakko