Besucherstatistik:

Online 2
Heute 70
Vortag 59
Tagesrekord 221
Gesamt 73715


Counter powered by

murbcom


Firefox Mozilla.org

firefox

JavaScript Formvalidator Pflicht-/Emailfelder2008-11-21 10:53:46

Für alle die etwas ähnliches versucht haben oder etwas ähnliches benötigen.
Hier ist ein von mit erstelltes Stückchen JavaScript Code um auf Pflichtfelder zuprüfen.

Ja ich gebe zu es ist nicht ganz so toll, dass ich das "alt" Attribut dazu benutze etwas auf Pflicht zusetzen aber ich wollte es mir eben einfach machen.
Das Folgende Skript prüft alle Felder eines Formulars welche "required" als Wert des "alt" Attributes haben.
Es ist darauf ausgelegt um mehrere Formulare einer Seite unabhängig prüfen zu können.

Weitere Features sind Hintergrundfarbe der fehlenden Pflichteinträge ändern und den Focus auf den ersten Fehler zusetzen, damit gleich weiter editiert werden kann.
Es gibt sicherlich elegantere Lösungen als die meine aber ich hoffe euch gefällt was ich gebastelt habe.

Code:

var valid=null;
var expression=/(\w+)@(\w+)\.(\w+)/;

function mailchecker(mailtocheck){    
    if(1==expression.test(mailtocheck)){
        return true;
    }
    else{
        return false;
    }
}

function check_required_fields(myform){
    var count=document.forms[myform].elements.length;
    var focusHelper=0;
    for(var i = 0; i < count; i++){
        if(document.forms[myform].elements[i].alt && "required" == document.forms[myform].elements[i].alt){
            if(""==document.forms[myform].elements[i].value){
                document.forms[myform].elements[i].style.background="#ff8822";
                if(0==focusHelper){
                    document.forms[myform].elements[i].focus();
                    focusHelper=1;
                }
            }
            else if("email"==document.forms[myform].elements[i].name){
                valid=mailchecker(document.forms[myform].elements[i].value);
                if(true==valid){
                    document.forms[myform].elements[i].style.background="";
                }
                else{
                    document.forms[myform].elements[i].style.background="#ff8822";
                    if(0==focusHelper){
                        document.forms[myform].elements[i].focus();
                        focusHelper=1;
                    }
                }
            }
            else{
                document.forms[myform].elements[i].style.background="";
            }
        }
        else{
            document.forms[myform].elements[i].style.background="";
        }
    }
    if(0==focusHelper){
        document.forms[myform].submit();
    }
}


JavaScript



Valid HTML 4.01 Transitional CSS ist valide!