Zur Navigation

Bowser aufhängen verhindern [2]

12 Peter

nein, "return false;" hilft leider nicht.

10.03.2008 21:53

13 Jörg Kruse

Ich glaub das Problem ist folgendes:

Der IE verlässt beim Tabben das erste Feld und springt in das zweite Feld. Erst danach führt er checkB() aus, welches dazu führt, dass der Focus wieder ins erste Feld gelegt wird. Da dadurch das zweite Feld verlassen wird, wird nun seinerseits checkH() ausgelöst, was in diese Endlosschleife führt.

Ein Ausweg hieraus wäre es vielleicht, die Funktionen nicht über onblur aufzurufen, sondern bei onfocus des folgenden Eingabefeldes?

10.03.2008 22:25 | geändert: 10.03.2008 22:26

14 Peter

Habe jetzt nur eine Funktion zum testen der beiden Felder, function check()
function check () {
var H = document.jalou.EinH.value;
var B = document.jalou.EinB.value;
if (H >= 400 && H <= 3000)
    { alert("Die Höhe liegt nicht zwischen 400 und 3000 mm!\n Bitte neu eingeben!");
      document.jalou.EinH.focus();
      document.jalou.EinH.value = "";
      return(false);       
}
else if(B >= 400 && B <= 2200)
{alert("Die Breite liegt nicht zwischen 400 und 2200 mm!\n Bitte neu eingeben!");
      document.jalou.EinB.focus();
      document.jalou.EinB.value = "";
      return(false);
}
return true;
}

Irgenwo stimmt da noch was nicht, es schein als werde die Prüfung verkertum ablaufen.

10.03.2008 23:09

15 Jörg Kruse

Die Bedingungen müsen denke ich andersrum formuliert werden:

function check () {
var H = document.jalou.EinH.value;
var B = document.jalou.EinB.value;
if (H < 400 || H > 3000)
    { alert("Die Höhe liegt nicht zwischen 400 und 3000 mm!\n Bitte neu eingeben!");
      document.jalou.EinH.focus();
      document.jalou.EinH.value = "";
      return(false);       
}
else if(B < 400 || B > 2200)
{alert("Die Breite liegt nicht zwischen 400 und 2200 mm!\n Bitte neu eingeben!");
      document.jalou.EinB.focus();
      document.jalou.EinB.value = "";
      return(false);
}
return true;
}

10.03.2008 23:14

16 Peter

Danke Jörg, jetzt funktioniert es.

10.03.2008 23:22

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]