function eMailAdresseOK(eMail)
  {
  if (eMail.value.length==0) { return true }

  var FehlerMeldung = new String("Fehler in der eMail-Adresse\n\n")

  var PosEt = eMail.value.indexOf("@")
  if (PosEt == -1)
	{
	alert(FehlerMeldung + "Es fehlt ein @")
	return eMail.focus()
	}
  if (PosEt == 0)
	{
	alert(FehlerMeldung + "Es fehlt der Empf\xE4nger")
	return eMail.focus()
	}
  if (eMail.value.indexOf("@", PosEt + 1) > PosEt)
	{
	alert(FehlerMeldung + "Es darf nur ein @ enthalten sein")
	return eMail.focus()
	}

  var PosPt = eMail.value.indexOf(".", PosEt)

  if ((PosPt == -1) || (PosPt - PosEt < 2) || (eMail.value.length - PosPt < 3))
	{
	FehlerMeldung += "Eine eMail-Adresse muss so aufgebaut sein: x@x.xx "
	FehlerMeldung += "Jedes x steht f\xFCr mindestens ein Zeichen"
	alert(FehlerMeldung)
	return eMail.focus()
	}

  var ZugelasseneZeichen = new String("abcdefghijklmnopqrstuvwxyz")
  ZugelasseneZeichen += ZugelasseneZeichen.toUpperCase() + "0123456789.-_@"

  return PruefeZeichen(eMail, ZugelasseneZeichen, FehlerMeldung)
  }

function PruefeZeichen(Feld, ZugelasseneZeichen, FehlerMeldung)
  {
  for (var Pos = 0; Pos < Feld.value.length; Pos++)
	{
	if (ZugelasseneZeichen.indexOf(Feld.value.charAt(Pos)) == -1)
	  {
	  FehlerMeldung += "\n\nIhre Eingabe enth\xE4lt das Zeichen '"
	  FehlerMeldung += Feld.value.charAt(Pos)
	  FehlerMeldung += "'. Sie d\xFCrfen nur diese Zeichen verwenden:\n"
	  FehlerMeldung += ZugelasseneZeichen
	  if (ZugelasseneZeichen.indexOf(" ") == -1)
		{
		FehlerMeldung += "\nLeerzeichen sind nicht erlaubt"
		}
	  else
		{
		FehlerMeldung += "\nund das Leerzeichen"
		}
	  alert(FehlerMeldung)
	  Feld.focus()
	  return;
	  }
	}
  }
