Allack: Formular überprüfen

Hallo!

Hab ein Formular geschrieben und dazu eine JS-Funktion, die das Script auf Vollständigkeit der Daten checkt. Das ist ist ja kein Problem! Die Inputs mit dem Type Text bzw. tetareas bzw. das @ und der . bei der Email werden erfolgreich überprüft. Mit  "return FUNKtion()" hab ich das gemacht.
Das Problem liegt in einem Formularabschnitt, in dem eine Auswahlliste ist. Quelltext für den Bereich:

<select name="thema" size="4">
                <option>Zitate</option>
                <option>Text aus Heft oder Internet</option>
                <option>Ankündigungen</option>
                <option>Neues Thema</option>
              </select>

Wie kann ich nun mit JS überprüfen, ob ein Titel ausgewält wurde. Und falls "Neues Thema" ausgewählt wurde, ob im darauffolgenden Textfeld (Name="themaneu") auch etwas eingegeben wurde?

  1. Hallo du da draußen,

    Hab ein Formular geschrieben und dazu eine JS-Funktion, die das Script auf Vollständigkeit der Daten checkt. Das ist ist ja kein Problem! Die Inputs mit dem Type Text bzw. tetareas bzw. das @ und der . bei der Email werden erfolgreich überprüft. Mit  "return FUNKtion()" hab ich das gemacht.

    Du bist dir hoffentlich im Klaren darüber, dass nicht jeder JavaScript aktiviert hat und das Formular jedenfalls auch ohne diese Überprüfung abgesendet werden kann.

    Wie kann ich nun mit JS überprüfen, ob ein Titel ausgewält wurde. Und falls "Neues Thema" ausgewählt wurde, ob im darauffolgenden Textfeld (Name="themaneu") auch etwas eingegeben wurde?

    Als erstes mal gibt es selectedIndex (http://selfhtml.teamone.de/javascript/objekte/options.htm#selected_index). Damit kannst du die aktuell ausgewählte Nummer von 0 gezählt herausfinden.

    In deiner Funktion kannst du das jetzt so reinschreiben:

    if(document.FormularName.thema.selectedIndex == 0)
    {
      // Der erste Eintrag ist noch ausgewaehlt
      return false; // Oder wie du auch immer die Fehlermeldung bringst
    }
    elseif(document.FormualarName.thema.selectedIndex == 3 && document.FormularName.themaneu.value == "")
    {
      // "Neues Thema" ist ausgewaehlt und "themaneu" ist leer
      return false; // Oder wie du auch immer die Fehlermeldung bringst
    }

    Grüße von hier drinnen, aus Biberach an der Riss (http://www.stadt-biberach.de/),
    Candid Dauth (Dogfish)

    --
    Verantwortlich für Falschaussagen ist ausschließlich mein Gehirn. Hinweise auf solche gebe ich ihm aber gerne weiter.
    Let's close our eyes and see what happens.
    http://dogfish.net.tc/