jqueryvalidation Firefox Problem

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

EuroCent

Klappstuhl 2.0
Guten Morgen zusammen,

ich habe aktuell folgendes Problem:
wir verwenden auf unseren Formularen den jqueryvalidation an.
Unter IE funktioniert der Validator einwandfrei.
Unter Firefox jedoch schreibt er egal ob Inhalt hinterlegt oder es gar kein Pflichtfeld ist, folgendes: "Bitte gib maximal -1 Zeichen ein. ".

Da die Formulare dynamisch erstellt werden, ist es schwierig es im validate unterzubringen, daher weiter unten die each-Schleife :)

Hier mal die JS-Code Stelle:
Javascript:
    $("#send_mf").validate({
        submitHandler: function (form) {
            generate_txt();
            $("[name='action']").val('1');
            form.submit();
        }
    });

    $('form#send_mf').find('input[type!=hidden],textarea,select').each(function () {

        if ($(this).prop('required') != undefined) {

            $(this).rules("add", {
                required: $(this).prop('required')
            });
        }

        if ($(this).data('minlength') != undefined) {

            $(this).rules("add", {
                minlength: $(this).data('minlength')
            });
        }

        if ($(this).prop('maxlength') != undefined) {

            $(this).rules("add", {
                maxlength: $(this).prop('maxlength')
            });
        }

        if ($(this).prop('type') == 'email') {

            $(this).rules("add", {
                email: true
            });
        }

        if ($(this).prop('type') == 'number') {

            $(this).attr("type", "text");

            $(this).rules("add", {
                digits: true
            });
        }

        if ($(this).data('blacklist') != undefined) {
            $(this).on("keyup", function () {
                check_blacklist($(this).prop('name'));
            });
        }
    });

Weiß hier jemand woran es liegt?
Im IE wie gesagt funktioniert es ja... mit Google Chrome haben wir es nicht getestet, da er nicht verwendet werden darf.
 
Wäre sicherlich einfacher, wenn du ein Formular postest, bei dem der Fehler auftritt.

Gruß,
Quaese
 
Der anfang des Formulars wie es aufgebaut ist...

HTML:
<form name="send_mf" id="send_mf" action="" method="POST" enctype="multipart/form-data">
    <input name="test" id="test" type="text" placeholder="Test" required />
    <input type="submit" name="send" id="send" value="Senden" />
</form>

Hat es etwas was mit dem "enctype="multipart/form-data"" zutun?
 
Hi,

Javascript:
$(this).prop('maxlength')
liefert im Firefox (im Chrome übrigens auch) -1 und ist somit ungleich undefined. Damit ist der Ausdruck wahr und es wird auf diese Länge validiert. Vielleicht solltest du stattdessen prüfen, ob der ungleich undefined und grösser als 0 ist.

Ciao
Quaese
 
Ah... okay...
Das werd Ich mal prüfen.

Mit der Formatierung des Formulars hat es aber nichts zutun?

Chrome dürfen wir leider nicht verwenden daher hab Ich explizit nur Firefox angesprochen...

Gibt es noch einen Hinweis worauf Ich zischten habe?

Sollte Ich ninlength ebenso überprüfen wie auch mit maxlength? :)
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Zurück