doemsle: Formularliste überprüfen

Ich habe folgendes Problem:

Ich habe an erster Stelle einer Formularliste den Eintrag
"--- Bitte auswählen ---".

Jetzt möchte ich mit JS überprüfen ob ein Eintrag angewählt wurde, aber nicht "--- Bitte auswählen ---".

Ich habe in 2 Varianten probiert, ging aber beides nicht.

1.)
    if(document.form.liste.value == "---Bitte auswählen ---") {
 alert("Bitte wählen Sie einen Eintrag aus der Liste!");
 document.form.liste.focus();
 return false;
 }

2.)
    if (document.form.liste.value.indexOf(":") == -1) {
        alert("Bitte wählen Sie einen Eintrag aus der Liste!");
        document.form.liste.focus();
 return false;
        }

Kann mir bitte jemand helfen.
Danke im Voraus

  1. Hallo!

    Def.:
    <SELECT ID="IRGENDWAS">
      <OPTION VALUE="-1">--- Bitte auswählen ---</OPTION>
      <OPTION VALUE="0">BLA BLA</OPTION>
    </SELECT>

    Script:
    if(document.getElementById("IRGENDWAS").value==-1)
      alert("Bitte wählen Sie einen Eintrag aus der Liste!");

    So sollte es funktionieren
    Gruß Mike

    1. hi,

      <SELECT ID="IRGENDWAS">
      if(document.getElementById("IRGENDWAS").value==-1)

      select hat kein value - nur die options haben eins.

      gruss,
      wahsaga

  2. hi,

    Jetzt möchte ich mit JS überprüfen ob ein Eintrag angewählt wurde, aber nicht "--- Bitte auswählen ---".

    Ich habe in 2 Varianten probiert, ging aber beides nicht.

    if(document.form.liste.value == "---Bitte auswählen ---") {
        if (document.form.liste.value.indexOf(":") == -1) {

    wie ich mike schon gerade sagte, hat select in JS keine eigenschaft value.

    frage stattdessen ab, welcher index ausgewählt wurde.
    wenn dieser gleich -1 oder 0 ist, hat noch gar kein auswahl stattgefunden, oder sie steht auf dem ersten eintrag, eben deinem "--- Bitte auswählen ---".
    (tipp: gleich -1 oder gleich 0 kombinierst du natürlich sinnvoller zu > 0.)

    http://selfhtml.teamone.de/javascript/objekte/options.htm#selected_index

    gruss,
    wahsaga