Sven Jonke: Select ändert Select/Text

Hallo liebe Forumbesucher !!!

Gleich zu beginn: Ich habe mich lang genug durch SELFHTML gewühlt, finde aber einfach keine Lösung (vielleicht gibt es sie ja doch, aber ich find sie halt nicht).
Ich habe eine HTML-Seite mit einem
<select value=...> <option...>A <option...>B </select>
Nun habe ich unten den Text stehe: "Sie möchten also X anzeigen."
Hier steht der gewählte Wert drin.
Ich möchte, daß, wenn man oben einen anderen Wert auswählt, daß dann unten automatisch der Text geändert wird.
Wäre klasse, wenn mir irgendjemand helfen könnte.
Vielen Dank schon mal im Vorraus.
Gruß Sven

  1. Hallo liebe Forumbesucher !!!

    Gleich zu beginn: Ich habe mich lang genug durch SELFHTML gewühlt, finde aber einfach keine Lösung (vielleicht gibt es sie ja doch, aber ich find sie halt nicht).
    Ich habe eine HTML-Seite mit einem
    <select value=...> <option...>A <option...>B </select>
    Nun habe ich unten den Text stehe: "Sie möchten also X anzeigen."
    Hier steht der gewählte Wert drin.
    Ich möchte, daß, wenn man oben einen anderen Wert auswählt, daß dann unten automatisch der Text geändert wird.
    Wäre klasse, wenn mir irgendjemand helfen könnte.
    Vielen Dank schon mal im Vorraus.
    Gruß Sven

    Hi Sven,

    also zunaechst einmal gehoert in den <SELECT>- Tag kein value, der gehoert in den jewailigen <OPTION>- Tag.
    Wenn ich dich richtig verstanden habe moechtest Du den Inhalt eines Text- Feldes abhaengig von einer Select- Liste aendern.
    Gut.
    Dass sollte folgendermassen funktionieren:

    <script language="javascript">
    function textaendern(auswahl)
    {
    document.form1.text1.value="Sie moechten also"+auswahl+"anzeigen?";
    }
    </script>
    <form name="form1">
    <select name="select1" size="5" onChange="textaendern(document.form1.select1.options[document.form1.select1.selectedIndex].value)">
      <option value="auswahl1">auswahl1
      <option value="auswahl2">auswahl2
    </select>

    <input type="text" name="text1" size="50" maxLength="50" value="Sie moechten also auswahl1 anzeigen?">

    Hab‚s nicht getestet muesste aber laufen.
    Ciao

    Sebastian

    1. Hallo!

      Ein kleiner Tip: In Event-Handler zeigt das keyword 'this' immer auf das Element, zu dem der Eventhandler gehoert. In Deinem onChange repraesentiert 'this' also diese Select-Box. Desweiteren hat jedes Formular-Element die Eigenschaft 'form', welche auf das Formular zeigt, in dem das Element enthalten ist. 'this.form' wuerde daher auf das Formular zeigen, wo wiederum die Eigenschaft 'text1' (aber nur in *diesem* Formular) auf das Textfeld zeigt. Dein Code laesst sich daher ein wenig vereinfachen wie folgt:

      Dass sollte folgendermassen funktionieren:

      <script language="javascript">

      function textaendern(select) {
              var auswahl = select.options[select.selectedIndex].value;
              select.form.text1.value = "Sie moechten also" + auswahl + "anzeigen?";
          }

      </script>
      <form name="form1">

      »»  <select name="select1" size="5" onChange="textaendern(this))">

      <option value="auswahl1">auswahl1
        <option value="auswahl2">auswahl2

      »»  </select>

      »»  <input type="text" name="text1" size="50" maxLength="50" value="Sie moechten also auswahl1 anzeigen?">
      </form>   <!-- nicht vergessen -->

      Ganz nebenbei hat das auch den Vorteil, dass Du mal eben das Formular anders nennen kannst und der Code trotzdem noch funktioniert, ist also portabler.

      So long

      1. Hallo!

        Ein kleiner Tip: In Event-Handler zeigt das keyword 'this' immer auf das Element, zu dem der Eventhandler gehoert. In Deinem onChange repraesentiert 'this' also diese Select-Box.

        Ganz nebenbei hat das auch den Vorteil, dass Du mal eben das Formular anders nennen kannst und der Code trotzdem noch funktioniert, ist also portabler.

        So long

        Hei,

        danke sehr. Hab‚ ich bisher noch gar nicht drueber nachgedacht. Macht aber wirklich einiges einfacher.
        Also bis denn

        Sebastian

        1. Vielen Dank euch beiden !!!

          Habe zwar grad herausgefunden, daß man ds mit JavaScript und innerHTML und outerHTML auch hinbekommt, aber das ist sicherlich nicht so stilvoll.

          Also nochmal, vielen Dank.
          Gruß Sven