M
Mr. Snoot
Gast
Hio,
ich habe in meinem Kontaktformular 4 Felder (3 × input + textarea), die während der Eingabe auf Korrektheit geprüft werden sollen. Im Moment funktioniert das ganze aber nur im IE problemlos, in Opera, Chrome und FF nur halbherzig.
Im IE kann ich bspw. nach einer Eingabe mit Tab ins nächste Feld springen oder mit der Maus das Feld verlassen (daneben bzw. nächstes Feld anklicken) und die Eingabe wird geprüft.
In den anderen Browser muss man das Feld mindestens 2 mal ausgewählt und verlassen haben, damit es funktioniert; also:
Im Moment benutze ich für den Funktionsaufruf onBlur; onChange oder onkeyxx funktionieren gar nicht. Der Code bei den Eingabefeldern sieht so aus:
Und die JS-Funktion:
Ich denke mir, dass der Fehler vielleicht daher kommt, weil ich jetzt im Grunde zwei mal blur habe. Einmal zum Aufruf der Funktion und dann noch einmal innerhalb der Funktion selbst - was ja eigentlich Unsinn ist, oder?
----
edit: okay, hab's mit meinen bescheidenen JS-Kenntnissen geschafft, das blur in der Funktion zu eliminieren
Wenn ich mich nicht täusche scheint es jetzt zu laufen.
ich habe in meinem Kontaktformular 4 Felder (3 × input + textarea), die während der Eingabe auf Korrektheit geprüft werden sollen. Im Moment funktioniert das ganze aber nur im IE problemlos, in Opera, Chrome und FF nur halbherzig.
Im IE kann ich bspw. nach einer Eingabe mit Tab ins nächste Feld springen oder mit der Maus das Feld verlassen (daneben bzw. nächstes Feld anklicken) und die Eingabe wird geprüft.
In den anderen Browser muss man das Feld mindestens 2 mal ausgewählt und verlassen haben, damit es funktioniert; also:
- Text eingeben
- Tab (bzw. irgendwo hinklicken)
- nichts passiert
- Tab+Shift (bzw. nochmal ins Feld klicken) - Eingabe unverändert lassen
- Tab (bzw. irgendwo hinklicken)
- Eingabe wird geprüft
Im Moment benutze ich für den Funktionsaufruf onBlur; onChange oder onkeyxx funktionieren gar nicht. Der Code bei den Eingabefeldern sieht so aus:
HTML:
<input id="..." onBlur="check(id, 'span_' + id)">
PHP:
function check(feld, span)
{
$(document).ready(function()
{
$("#" + feld).blur(function()
{
var wert=$(this).val();
$("#" + span).load("/kontakt/check.php",{'eingabe[]': [feld, wert]});
});
});
}
----
edit: okay, hab's mit meinen bescheidenen JS-Kenntnissen geschafft, das blur in der Funktion zu eliminieren
PHP:
function check(feld, span)
{
$(document).ready(function()
{
var wert=$("#" + feld).val();
$("#" + span).load("/kontakt/check.php",{'eingabe[]': [feld, wert]});
});
}
Zuletzt bearbeitet: