Über select aktion ausführen
Simsso
- javascript
0 Der Martin0 Metalgurke0 tk0 Der Martin
Hallo,
ich habe folgenden Code:
<html>
<body>
<select name="select">
<option name="r" value="red">Rot</option>
<option name="b" value="blue">Blau</option>
<option name="g" value="green">Grün</option>
</select>
<div style="background-color: black; height: 50; width: 50; " />
</body>
</html>
Und ich möchte mit JavaScript erreichen, dass ohne ein neuladen der Seite bei der Auswahl einer der Optionen die Farbe des Div containers geändert wird. Also wenn man oben Rot auswählt, dass der Container dann "red" wird.
Wisst ihr wie das geht?
Wäre nett, wenn ihr dann den funktionierenden Code posten könntet!
Liebe Grüße und schönes Wochenende
Simsso
Hi,
ich möchte mit JavaScript erreichen, dass ohne ein neuladen der Seite bei der Auswahl einer der Optionen die Farbe des Div containers geändert wird. Also wenn man oben Rot auswählt, dass der Container dann "red" wird.
du brauchst also einen Eventhandler, am besten wohl onchange, den du an das select-Element klebst. In der Eventhandler-Funktion bestimmst du den Index des ausgewählten Eintrags, holst dir damit dessen value-Eigenschaft und setzt davon abhängig einen Eintrag für die Farbe im style-Objekt des select-Elements.
Noch besser: Manipuliere nicht direkt style, sondern gib dem Element eine Klasse. Dann kannst du die tatsächliche Formatierung ordentlich im Stylesheet vornehmen.
<div style="background-color: black; height: 50; width: 50; " />
Das ist kein gültiges CSS. 50 Streichhölzer hoch und 50 Grashalme breit?
Wäre nett, wenn ihr dann den funktionierenden Code posten könntet!
Wäre nett, wenn du selbst ein wenig mitmachen könntest. Anregungen dazu hast du nun bekommen.
Jetzt bist du wieder dran.
Ciao,
Martin
Hi Simsso,
Martin hat eigentlich schon alles gesagt. Noch schnell ein genereller Tipp, lass deinen Code vom w3c-Validator checken. Dann würde dir auch auffallen, dass das schließende "</div>" fehlt. "<div/>" gibt es nicht.
Gruß Metalgurke
Hallo,
Noch schnell ein genereller Tipp, lass deinen Code vom w3c-Validator checken. Dann würde dir auch auffallen, dass das schließende "</div>" fehlt. "<div/>" gibt es nicht.
Sagt wer? Der Validator beschwert sich darüber jedenfalls nicht ...
Gruß,
Tobias
Hallo,
Noch schnell ein genereller Tipp, lass deinen Code vom w3c-Validator checken. Dann würde dir auch auffallen, dass das schließende "</div>" fehlt. "<div/>" gibt es nicht.
Sagt wer? Der Validator beschwert sich darüber jedenfalls nicht ...
Gruß,
Tobias
Wie Martin schon sagte, als XHTML-Dokument wäre es korrekt (würde aber wenig Sinn machen), als HTML4-Dokument wäre es nicht valide. Davon mal abgesehen, sollte man seinen Code immer durch den W3C-Validator jagen, dann würde nämlich ebenfalls auffallen, dass das <header>-Tag fehlt. :)
Hallo,
Dann würde dir auch auffallen, dass das schließende "</div>" fehlt. "<div/>" gibt es nicht.
in der Theorie wäre das für XHTML sogar richtig und gültig. Aber die Browser, die üblicherweise ihren HTML-Tagsoup-Parser verwenden, begreifen das dann nicht. Abgesehen davon ist ein leeres div-Element semantischer Unfug.
Ist mir aber tatsächlich nicht aufgefallen; danke für den Hinweis.
Ciao,
Martin