Antworten auf deine Fragen:
Neues Thema erstellen

[Javascript] Formular Eingabe prüfen - Internet Explorer Fehler

ddjjmm

Nicht mehr ganz neu hier

Habe folgende Abfrage die vor dem Abschicken meines Kontaktformulars ausgeführt wird:

PHP:
        if (document.formular.first_name.value == "") {
            alert("Bitte geben Sie Ihren Vornamen an.");
            document.formular.first_name.focus();
        return false;
        }

In allen Browsern funktioniert die Prüfung, lediglich im IE wird das Formular auch ohne Eingabe abgeschickt. Idee?

Mir ist bewusst, dass eine ordentliche Eingabeprüfung nicht mit Javascript ablaufen sollte ;)
 

mindraper

me[code].Java(Script)

AW: [Javascript] Formular Eingabe prüfen - Internet Explorer Fehler

hi.

angenommen, das hier ist dein formular:
HTML:
<form name="formular" action="http://www.google.de" method="post" enctype="application/x-www-form-urlencoded">
    <input type="text" name="first_name">
    <input type="submit" name="submitter" value="clickMe2Submit">
</form>
dann kannst du das hier nutzen:
PHP:
window.onload = function(){    
    var myForm= document.getElementsByName( 'formular' )[0];
    
    // cancels the standardbehaviour of your browser, either by calling
    // e.preventDefault() or by setting the returnValue to false ( IE )
    var prevDef = function( e ){
        var evt;
        if( !e ){
            evt = window.event;
            evt.cancelBubble = true;
            evt.returnValue = false;
        } else {
            e.preventDefault();
            e.stopPropagation();
        }
    };
    
    var checkBeforeSubmit = function( e ){        
        var elem2Check;

        elem2Check = document.getElementsByName( 'first_name' )[0];
        
        if( elem2Check.value === '' ){
            elem2Check.style.backgroundColor = '#cc0000';
            elem2Check.focus();
            prevDef( e );
        }
    }
    
    myForm.onsubmit = checkBeforeSubmit;  
}
"prevDef" ist unsere eigene implementierung von event.preventDefault() für browser, die es nicht kennen ( nur noch IE < 9 ). wann immer du ein standardevent abbrechen willst, musst du nur "prevDev()" aufrufen.

getestet in IE 7 - 9, FF, O, Safari, Chrome.

hoffe das hilft
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.615
Beiträge
1.538.352
Mitglieder
67.527
Neuestes Mitglied
Christian Eidelloth
Oben