esl: Formularvalidierung

Hallo

Ich habe ein Formular, in welchem ich vor dem Abschicken prüfen will, in DropDown-Listen der richtige Eintrag selektiert ist. Ich habe diesbezüglich was in selfhtml gefunden, aber irgendwie steh ich da auf dem schlauch:

das javascript (ein teil davon):
if (document.feedback.role.selectedIndex == 0) {
   alert("Sie müssen Ihre Rolle angeben!");
   document.feedback.role.focus();
  }

idas entsprechende Feld im form:

<select name="role"><option value="">--Bitte auswählen--</option><option value="0">Consultant</option><option value="1">Senior Consultant</option></select>

erreichen will ich, dass der Alert erscheint, wenn "--bitte auswählen--" ausgewählt ist.

Was mache ich da falsch?

Danke für eure hinweise
esl

  1. Hallo

    hallo

    Ich habe ein Formular, in welchem ich vor dem Abschicken prüfen will, in DropDown-Listen der richtige Eintrag selektiert ist. Ich habe diesbezüglich was in selfhtml gefunden, aber irgendwie steh ich da auf dem schlauch:

    versuchs mal mit:

    if (document.feedback.role.value == "") {

    ^^^^^^^^^^^^^^

    alert("Sie müssen Ihre Rolle angeben!");
       document.feedback.role.focus();
      }

    <select name="role"><option value="">--Bitte auswählen--</option><option value="0">Consultant</option><option value="1">Senior Consultant</option></select>

    Danke für eure hinweise
    esl

    romy

  2. Hallo,

    <script type="text/javascript">

    function checkme()
    {
    if (document.feedback.role[document.feedback.role.selectedIndex].value == "none")
        {
         alert("Sie müssen Ihre Rolle angeben!");
         document.feedback.role.focus();
         return false;
        }
    }
    </script>
    <form name="feedback" action="seite.*" method="post" onSubmit="return checkme();">

    <select name="role">
    <option value="none">--Bitte auswählen--</option>
    <option value="0">Consultant</option>
    <option value="1">Senior Consultant</option>
    </select>
    </form>

    Odium

    1. Hallo, Odium,

      if (document.feedback.role[document.feedback.role.selectedIndex].value == "none")

      if (document.feedback.role.selectedIndex==0) {...} geht auch. Das war nicht der Fehler.
      Nur so als Anmerkung. :)

      <?php
      include('statement_bezueglich_der_sinnhaftigkeit_von_clientseitiger_formularvalidierung.txt');
      exit;
      ?>

      Mathias

      1. Hallo,

        das es bessere Wege gibt ist mir klar, sowas bin ich gewöhnt zu tun, aber man kann fragesteller auch erschlagen...

        Odium

        1. Hallo, Odium,

          das es bessere Wege gibt ist mir klar, sowas bin ich gewöhnt zu tun, aber man kann fragesteller auch erschlagen...

          "Du hast schon recht", aber ich dachte daran, dass der Fragende schon eine "Eigenleistung" erbracht hat, welche es nur zu erweitern galt (AFAIR das return false und die Bennennung des Formulars/der Eingabefelder, aber das hat er/sie ja nicht explizit zitiert). Wenn er/sie schon etwas in Selfhtml gefunden und ausprobiert hat, sollte man sie/ihn besser "dort abholen" anstatt ihm/ihr eine neue bzw. "stark veränderte" Version vorzulegen, welche zudem noch eine weitere Objekteigenschaft einführt...

          Sollte keine Kritik sein, nur eine Anmerkung. Ein paar erklärende Worte hättest du trotzdem schreiben können. ;)
          Meinetwegen EOD.

          Mathias
          (Nein, ich bin kein Pädagoge. ;))