TIM: Formularüberprüfung auf Punkt

Hallo Zusammen,
ich hab da mal ne Frage zu einer Überprüfung in einem Formularfeld.
Es dürfen nur Zahlen bzw. ein Punkt eingeben werden. Die Überprüfung auf Zahlen funktioniert auch, aber wie kann ich in dem Skript noch sagen, dass auch ein Punkt eingegeben werden darf???

Wäre nett, wenn mir da Jemand helfen könnte.

Nach Möglickeit das Skript von der Struktur her so beibehalten, falls das nicht geht, auch net weiter schlimm

Danke!!!!

Hier das Skript:

function chkFormular()

{
 if(document.tick.idurchmesser.value == "")

{
  alert("Bitte geben Sie den Innendurchmesser CL ein!");
  document.tick.idurchmesser.focus();
  return false;
  }
 var chkZ = 1;

for(i=0;i<document.tick.idurchmesser.value.length;++i)
   if(document.tick.idurchmesser.value.charAt(i) < "0"
   || document.tick.idurchmesser.value.charAt(i) > "9")

chkZ = -1;
 if(chkZ == -1)
 {
  alert("Überprüfen Sie bitte die Eingabe des Innendurchmessers CL");
  document.tick.laenge.focus();
  return false;
  }

  1. Hallo Zusammen,

    Hallo TIM,

    Statt

    for(i=0;i<document.tick.idurchmesser.value.length;++i)
       if(document.tick.idurchmesser.value.charAt(i) < "0"
       || document.tick.idurchmesser.value.charAt(i) > "9")

    kannst Du
     parseFloat(document.tick.durchmesser.value)
    verwenden.

    Grüße
    Andi

  2. Sollte funktionieren:

    if(document.tick.idurchmesser.indexOf(".") != -1 &&
        document.tick.idurchmesser.indexOf(".") == document.tick.idurchmesser.lastIndexOf("."))
     ...

    mfg

    christian

    Hallo Zusammen,
    ich hab da mal ne Frage zu einer Überprüfung in einem Formularfeld.
    Es dürfen nur Zahlen bzw. ein Punkt eingeben werden. Die Überprüfung auf Zahlen funktioniert auch, aber wie kann ich in dem Skript noch sagen, dass auch ein Punkt eingegeben werden darf???

    Wäre nett, wenn mir da Jemand helfen könnte.

    Nach Möglickeit das Skript von der Struktur her so beibehalten, falls das nicht geht, auch net weiter schlimm

    Danke!!!!

    Hier das Skript:

    function chkFormular()

    {
    if(document.tick.idurchmesser.value == "")

    {
      alert("Bitte geben Sie den Innendurchmesser CL ein!");
      document.tick.idurchmesser.focus();
      return false;
      }
    var chkZ = 1;

    for(i=0;i<document.tick.idurchmesser.value.length;++i)
       if(document.tick.idurchmesser.value.charAt(i) < "0"
       || document.tick.idurchmesser.value.charAt(i) > "9")

    chkZ = -1;
    if(chkZ == -1)
    {
      alert("Überprüfen Sie bitte die Eingabe des Innendurchmessers CL");
      document.tick.laenge.focus();
      return false;
      }

  3. Hallo Auch,
    Dafür verwendet man IMHO am besten reguläre Ausdrücke. Siehe:
    http://selfhtml.teamone.de/javascript/objekte/regexp.htm
    In deinem Falle:
    myRegEx = /[1]+$/g;
    if (!myRegEx.text(document.tick.idurchmesser.value))
      alert "Falsche Eingabe";
    ...
    greetings
    Stephan


    1. 0-9. ↩︎

  4. Machs doch mit regulären Ausdrücken! Damit kann man Strings am besten prüfen. Zur Orientierung kannst Du dir gerne meinen SmartCheck 1.5 ansehen.

    http://people.freenet.de/javascript/