Heim  >  Artikel  >  Web-Frontend  >  Eine gekapselte universelle Methode zur Erkennung von Formen_Javascript-Fähigkeiten

Eine gekapselte universelle Methode zur Erkennung von Formen_Javascript-Fähigkeiten

WBOY
WBOYOriginal
2016-05-16 16:18:53968Durchsuche

Überprüfung erkennen, dass das Formular nicht leer sein darf (.notnull)

Funktion: Wenn unter einem Formular-Tag-Paar mehrere Formulare (einschließlich eines) übermittelt werden müssen, verwenden Sie js, um die aktuelle Schaltfläche und diese Elemente genau zu beurteilen

Verwendung: Suchen Sie den Container des aktuellen Formulars unter dem Formular-Tag und geben Sie ihm class="form" und die Senden-Schaltfläche des aktuellen Formulars erhält class="check"
Elemente, die als leer überprüft werden müssen, erhalten die Eingabeaufforderungen class="notnull" nullmsg="xx can be empty!", und Formulare, die eine logische Beurteilung erfordern, erhalten die Eingabeaufforderung class="need"
Der Beurteilungstyp ist angegeben: class="num" (kann nur eine Zahl sein) Verifizierungsaufforderungslogikmsg="XX kann nur eine Zahl sein"

Geben Sie class="errorMessage" an, um den Fehlermeldungsblock anzuzeigen
Geben Sie class="warn" ein, um eine Fehlermeldung anzuzeigen
Keine objektorientierte js-Programmierung verwenden
Logisches Urteil, übergeben Sie nicht die Bedarfskennung, sondern geben Sie direkt das reguläre Ausdrucksattribut (benutzerdefiniert) regex="/^d$/" an, um ein Urteil zu fällen

Extern umgesetzt
Rückruffunktion der Global.submitCallback-Schaltfläche
Global.confirmCallback bestätigt die Rückruffunktion;
Bereiche mit Verbesserungspotenzial:
Keine

Code kopieren Der Code lautet wie folgt:

///
*/
//$(document).ready(
// Funktion () {
//        $("form").find(".notnull").bind({
//            focus: function () {
//                      if ($(this).attr("value") == this.defaultValue) {
//                        $(this).attr("value", "");
//               }
//            },
//            Unschärfe: Funktion () {
//                    if ($(this).attr("value") == "") {
//                                                      $(this).attr("value", this.defaultValue);
//               }
//           }
//       });
// }
//);
///*Methode zum Kapseln einer universellen Erkennungsform*/
///event.srcElement: Das Zielobjekt, das das Ereignis auslöst, wird häufig für Onclick-Ereignisse verwendet.
///event.fromElement: Die Objektquelle, die das Ereignis auslöst, wird häufig für onmouseout- und onmouseover-Ereignisse verwendet.
///event.toElement: Die Zielquelle, zu der sich die Maus bewegt, nachdem das Ereignis ausgelöst wurde. Sie wird häufig für Onmouseout- und Onmouseover-Ereignisse verwendet.
Funktion Global() {
var _self = this;
}
Global.submitCallback = null;
Global.confirmCallback = null;
$(document).ready(function () {
//Körper bilden
$("body").find(".form").each(function () {
This.onclick = Funktion (e) {
            var button = null;
             versuchen Sie es mit {
                          button = e.srcElement == null ? document.activeElement : e.srcElement;
              } Fang (e) {
console.log(e.message)
                       button = document.activeElement;
            }
If ($(button).is(".check")) {
//alert("submit")
                  var sub = (checkform(this) && CheckInputRex(this) && checkselect(this) && checkChecked(this));
                       if (sub) {
// Rufen Sie unseren Rückruf auf, verwenden Sie jedoch unsere eigene Instanz als Kontext
Global.submitCallback.call(this, [e]);
                }
                    return sub;
                } else if ($(button).is(".confirm")) {
//alert("delete")
              var sub = bestätigen($(button).attr("title"));
                       if (sub) {
Global.confirmCallback.call(this, [e]);
                }
                    return sub;
              } sonst {
                                                                                                                                                                                                                                      return true;
            }
}
});
/*Elemente erkennen, die im Formular nicht leer sein dürfen*/
Funktionsprüfformular (Formular) {
        var b = true;
           $(form).find(".notnull").each(function () {
If ($.trim($(this).val()).length <= 0) {//|| $(this).val() == this.defaultValue
durch //                                                                                                                                                                                                                                                                                                                                                                                // //alert($(this).attr("msg"))
                   $(this).parents(".form").find(".warn").text($(this).attr("nullmsg"));
$(this).parents(".form").find(".errorMessage").show();
                     $(this).select();
                    $(this).focus();
                   return b = false;
            }
        });
Wenn (b == wahr) {
               $(form).find(".warn").text("");
                $(form).find(".errorMessage").hide();
}
         return b;
}
/*Erforderliche Dropdown-Liste im Erkennungsformular*/
Funktion checkselect(form) {
        var b = true;
           $(form).find(".select").each(function (i) {
              var ck = $(this).find('option:selected').text();
If (ck.indexOf("select") > -1) {
                   $(this).parents(".form").find(".warn").text($(this).attr("nullmsg"));
$(this).parents(".form").find(".errorMessage").show();
                     $(this).select();
                    $(this).focus();
                   return b = false;
            }
        });
         return b;
}
/*Aktivieren Sie die erforderlichen Kontrollkästchen im Erkennungsformular*/
Funktion checkChecked(form) {
        var b = true;
​​​​ $(form).find(".checkbox").each(function (i) {
               var ck = $(this)[0].checked;
                if (!ck) {
                   $(this).parents(".form").find(".warn").text($(this).attr("nullmsg"));
$(this).parents(".form").find(".errorMessage").show();
                     $(this).select();
                    $(this).focus();
                   return b = false;
            }
        });
         return b;
}
//Überprüfen Sie, ob es mit dem regulären Ausdruck übereinstimmt
Funktion GetFlase(value, reg, ele) {
If (reg.test(value)) {
             return true;
}
           $(ele).parents(".form").find(".warn").text($(ele).attr("logicmsg"));
​​​​ $(ele).parents(".form").find(".errorMessage").show();
          $(ele).focus();
          $(ele).select();
          return false; //Kann nicht gesendet werden
}
Funktion CheckInputRex(form) {
        var b = true;
          $(form).find("input[type='text']").each(function () {
If (typeof ($(this).attr("regex")) == 'string') {
If ($.trim($(this).val()).length > 0 && $(this).val() != this.defaultValue) {
//Der Wert des aktuellen Formulars
                      var value = $(this).attr("value") ||                   var regx = eval($(this).attr("regex"));
                          return b = GetFlase(value, regx, this);
                }
            }
        });
         return b;
}
///Überprüfen Sie, ob die entsprechenden vom Benutzer eingegebenen Zeichen zulässig sind
///Diese Methode ist veraltet
Funktion CheckInput(form) {
        var b = true;
$(form).find(".need").each(function () {
If ($.trim($(this).val()).length > 0 && $(this).val() != this.defaultValue) {
//Der Wert des aktuellen Formulars
              var value = $(this).attr("value");
                          //Der Wert von id oder der Wert des Namensattributs lautet wie folgt: [name="contact"]
              var name = $(this).attr("class");
                                 // Überprüfen Sie, ob der einzugebende Inhalt legal ist, z. B.: Kontaktinformationen
              var len = name.split(" ");
for (var i = 0; i < len.length; i ) {
switch ($.trim(len[i])) {
                                                                                                                                                                                                                                       Fall „mobil“:
                                                                                                                                                                                                                                         var reg = /^1d{10}$/;
Return b = GetFlase(value, reg, this);
Pause;
                                                                                                                                                                                                                    Fall „E-Mail“:
var reg = /^[w-] (.[w-] )*@[w-] (.[w-] ) $/;
Return b = GetFlase(value, reg, this);
Pause;
///Sind die beiden Passwörter konsistent?                                                                               Fall „Passwort“:
Pause;
Fall „Passwort2“:
If ($("#password").attr("value") != $("#password2").attr("value")) {
                                                                        $(this).parents(".form").find(".warn").text($(this).attr("logicmsg"));
$(this).parents(".form").find(".errorMessage").show();
                                                                                                                                                                                                                                                                                                                                     } Pause;
Fall „worktel“:
case „hometel“: //Private Telefonnummer
                                                                                                                                                                                                                                           var reg = /^d{8}$/;
Return b = GetFlase(value, reg, this);
Pause;
                          case "post": //Postleitzahl
                                            var reg = /^d{6}$/;
Return b = GetFlase(value, reg, this);
Pause;
Fall „Bonus“:
Fall „Zulage“:
Fall „FixedSalary“:
var reg = /^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0 |0|[1-9]d)$/;
Return b = GetFlase(value, reg, this);
Pause;
Fall „Identität“:
                            var reg = /(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/;
Return b = GetFlase(value, reg, this);
                            Pause;
                        Fall „Höhe“:
                            var reg = /^[1-2][0-9][0-9]$/;
                            return b = GetFlase(value, reg, this);
                            Pause;
                        Fall „qq“:
                            var reg = /^[1-9][0-9]{4,}$/;
                            return b = GetFlase(value, reg, this);
                            Pause;
                        case „begintime“:
                        case „endtime“:
                            var reg = /^d{4}$/;
                            if (reg.test(value) && (parseInt($(".endtime").val()) > parseInt($(".begintime").val()))) {
                                return b;
                            }
                            $.ligerDialog.alert($(this).attr("msg"))
                            $(this).select(); //获取焦点
                            return b = false; //不能提交
                            Pause;
                        Fall „num“:
                            var reg = /^d $/;
                            return b = GetFlase(value, reg, this);
                            Pause;
                        ///大陆去香港需要办理往来港澳通行证和香港的签注.因私普通护照号码格式有:                                                        
///14/15 7 Ziffern, G 8 Ziffern; ///Das übliche ist: P. 7 Ziffern; ///Für offizielle Zwecke: S. 7 Ziffern oder //S 8 Ziffern, beginnend mit D ist ein Diplomatenpass                               case "postport": //Passnummer
                               var reg = /^(Pd{7}|Gd{8}|Sd{7,8}|Dd |1[4,5]d{7})$/;
Return b = GetFlase(value, reg, this);
Pause;
Fall „Bankkonto“:
                                    var reg = /^[0-9]{19}$/;
Return b = GetFlase(value, reg, this);
Pause;
                            } //switch
                                                      //für
            }
        });
         return b;
}
///Diese Methode ist veraltet
});
///Klicken Sie, um die Hintergrundfarbe zu ändern
$(document).ready(function () {
var inputs = $("#top>.c>input");
$(inputs).each(function () {
This.onclick = function () {
               document.getElementById("main").style.backgroundColor = this.name;
                    //$("#main").backgroundColor = this.name;
}
});
});



Der obige Code ist die gekapselte universelle Formularerkennungsmethode. Ich hoffe, er gefällt euch.
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn