Formularfeld prfüfen

Boof

Mitglied
Hallo Community,

ich habe ein kleines Formular gebastelt um Aufgaben zu erstellen und ich lasse es über Javascript auf Richtigkeit überprüfen.
Nun hab ich leider das Problem, dass wenn das Feld für die Jahreszahl leergelassen wird auch eine Fehlermeldung von Javascript angezeigt wird aber dieses Formularfeld soll optional ausgefüllt werden können. D.h. es muss nicht unbedingt nötig sein das Feld auszufüllen um das Formualr abschicken zu können.

Wie kann ich Javascript verständlich machen, dass in das Feld keine Zahl unter 2006 eingetragen werden darf und, dass das Feld leergelassen werden kann ?

Mein bisheriger Code:

Javascript:
  if (document.aufgabe.startdatumjahr.value < 2006 ) {
    alert("Startdatum (Jahre) nicht gültig");
    document.aufgabe.startdatumjahr.focus();
    return false;
  }

Bin für jeden Tip dankbar.
 
Zuletzt bearbeitet von einem Moderator:
Hi,

ich würde ausserdem noch testen, ob es sich bei der Übergabe überhaupt um eine Zahl handelt.
Code:
strVal = document.aufgabe.startdatumjahr.value;
if((strVal != "") && (isNaN(strVal) || (parseInt(strVal)<2006))){
  alert("Startdatum (Jahre) nicht gültig");
  document.aufgabe.startdatumjahr.focus();
  return false;
}
Ciao
Quaese
 
Wenn dir Quaeses Lösungsvorschlag geholfen und deine Frage beantwortet hat, dann markiere das Thema bitte als erledigt, vielen Dank.
 
Hi, ja weiss ich.
Habs grad getestet und es hat nicht funktioniert.
Ich werd jetzt nochma alle Begriffe die in dem Script vorkommen durchgehn.
Und dann mal schauen...
Wenn ich das hinbekomme markier ich das Thema als erledigt aber solange hoff ich auch weitere Vorschläge ;)
 
Edit:

Da hab ich mich beim Beantworten wohl im Thread geirrt. Da die Antwort überhaupt nichts
mit dem Thema zu tun hatte, wurde sie wieder gelöscht.

Quaese
 
Zuletzt bearbeitet:
Hi,

da hab ich wohl auf ein anderes Thema geantwortet. Vielleicht das nächste mal doch nach oben scrollen.

@Boof - das Script macht doch, was du wolltest. Wird ein Wert ins Feld eingetragen und es handelt
sich nicht um eine Zahl grösser oder gleich 2006, wird false zurückgegeben und damit das Versenden
unterbunden.

Folgendes Konstrukt funktioniert bei mir problemlos:
HTML:
<html>
<head>
<title>www.tutorials.de</title>
<script type="text/javascript">
<!--
function testIt(){
  strVal = document.aufgabe.startdatumjahr.value;

  if((strVal != "") && (isNaN(strVal) || (parseInt(strVal)<2006))){
    alert("Startdatum (Jahre) nicht gültig");
    document.aufgabe.startdatumjahr.focus();
    return false;
  }

  return true;
}
//-->
</script>
</head>
<body>
<form name="aufgabe" action="auswertung.php" method="get" onsubmit="return testIt();">
  <input type="text" name="startdatumjahr">
  <input type="submit" value="Senden">
</form>
</body>
</html>
Ciao
Quaese
 
Hi,
ja stimmt ich hab gerade bemerkt das in meinem Formular das onsubmit gefehlt hat.
Also ich hatte es schon eingetragen aber es ist irgendwie wieder verschwunden vielleicht zu oft STRG+Z gedrückt oder.

Jetzt funktionierts aber vielen Dank an Alle.

Thema erledigt.
 

Neue Beiträge

Zurück