Der Martin: Passwortfelder vergleichen

Beitrag lesen

Hallo,

Ich habe mir eine Javaanleitung für die Programmierung aus dem Internet besorgt ...

dabei wäre Javascript wohl passender gewesen, weil das hier mit Java nichts zu tun hat. ;-)

obwohl ich es genau so eingeben habe, klappt der Passwortvergleich nicht. Die anderen Sachen klappen halt wunderbar nur der Vergleich nicht.

"Klappt nicht" ist keine Fehlerbeschreibung. Was du erreichen möchtest, ist mir schon klar, aber wichtig wäre zu wissen, was *tatsächlich* passiert. Wichtig wäre zum Beispiel, welche Fehler gemeldet werden. Mit dieser Nichtinformation kann ich höchstens den Code durchsehen und offensichtliche Fehler herausstellen.
Apropos Code: Warum schreist du hier so? Durchgehende Großschreibung ist *sehr* unüblich, nicht zuletzt deshalb, weil die Lesbarkeit darunter leidet.

<p style="margin-bottom: 0px;"><input type="text" id="M1" name="GEMAIL" size="60" maxlength="46" style="width: 476px; white-space: pre;">&nbsp;</p>

Die CSS-Eigenschaft white-space auf ein einzeiliges Eingabefeld anzuwenden, ist ziemlich sinnlos. Ebenso sinnlos wie das geschützte Leerzeichen hinter dem Eingabefeld.

if (document.GESCHAEFTSKUNDENERFASSUNG.GEMAIL.indexOF("@") == -1)

Bisher wusstest du noch, dass man den eingegebenen Text über die Eigenschaft "value" erhält - hier willst du plötzlich die Methode indexOf() direkt auf das Elementobjekt anwenden. Ganz abgesehen davon, dass die Methode indexOf heißt und nicht indexOF. Hier muss die Javascript-Engine also die Bearbeitung abbrechen und die Fehlermeldung bringen, dass die Methode indexOF() nicht existiert.

if (document.GESCHAEFTSKUNDENERFASSUNG.GEMAIL2.indexOF("@") == -1)

Dasselbe in Grün.

if (document.getElementById("M1").value != document.getElementById("M2").value){
             alert("Die E-Mailadresse stimmt nich überein. Bitte neu eingeben")
             document.GESCHAEFTSKUNDENERFASSUNG.GEMAIL2.focus();
             return false;
}

Gibt es einen Grund, warum du bisher über Formular- und Feldnamen auf die Elemente zugegriffen hast, und jetzt plötzlich über die ID?

Ich habe auch schon folgendes probiert:

if (document.GESCHAEFTSKUNDENERFASSUNG.GEMAIL.value !=  document.GESCHAEFTSKUNDENERFASSUNG.GEMAIL2.value) {
alert("Die E-Mailadresse stimmt nich überein. Bitte neu eingeben")
document.GESCHAEFTSKUNDENERFASSUNG.GEMAIL2.focus();
return false;
}

Das würde von der Logik her zur restlichen Überprüfung weiter oben passen und könnte auch funktionieren - wenn das Script nicht schon vorher abgebrochen würde.

So long,
 Martin

--
Irgendwann in grauer Vorzeit benutzte einer unserer prähistorischen Vorfahren ein Schimpfwort anstelle der Keule.
Die Zivilisation hatte begonnen.