timex: focus auf fehlerhaftes eingabefeld setzen!?

Beitrag lesen

hallo zusammen ...

ich programmiere gerade eine js-abfrage fuer ein uebliches fomular.

bei fehlerhafter eingabe werden fehlertext angezeigt. falls eingabe eines feldes ok wird der fehlertext des entsprechenden feldes wieder ausgeblendet.

das erste fehlerhafte feld des fomulars soll den focus bekommen.

hier das script ... erst einmal nur fuer den ie, der rest kommt spaeter

<script language="JavaScript" type="text/javascript">
<!--

function chkForm() {

var ok = true;

if (document.formular.vorname.value == "") {
  document.formular.vorname.focus();
  document.getElementById("vornameFehler").style.visibility = "visible";
  ok = false;
 } else {
  document.getElementById("vornameFehler").style.visibility = "hidden";
 }

if (document.formular.nachname.value == "") {
  document.formular.nachname.focus();
  document.getElementById("nachnameFehler").style.visibility = "visible";
  ok = false;
 } else {
  document.getElementById("nachnameFehler").style.visibility = "hidden";
 }

if (document.formular.datum.value == "") {
  document.formular.datum.focus();
  document.getElementById("datumFehler").style.visibility = "visible";
  ok = false;
 } else {
  document.getElementById("datumFehler").style.visibility = "hidden";
 }

if (!ok)
 return ok;

}
// -->
</script>

aufruf via <form name="formular" action="ok.html" onSubmit="return chkForm()">

problem: beim absenden des formulars springt der focus immer in die letzte eingabemoeglichkeit. was an sich auch logisch ist, aber nicht mein ziel ist. ich moechte den focus auf das erste feld setzen, dass fehlerhaft ist.

vielleicht hat jemand eine idee?!

danke im voraus fuer die hilfe.
gruss, timex.