Kopieren Sie den Codecode wie folgt:
Funktion validierenNum(obj) {
//Positive Ganzzahl (hier wird Caching verwendet)
var number = obj.data(validate).number;
//Dezimalpunkt (hier wird Caching verwendet)
var decimal = obj.data(validate).decimal;
//Dynamische Grundregelmäßigkeit der Überprüfung
eval("var reg = /^[0-9]{0," + Zahl + "}([.]?[0-9]{0," + dezimal + "})$" + "/g;" );
var value = obj.val();
var maxnumlen = Zahl + Dezimalzahl + 1; //Maximale Länge + 1 (Dezimalpunkt)
if (!reg.test(obj.val())) return false;
//Die maximale Länge entspricht der Länge des aktuellen Werts und der Wert enthält kein „.“
if (maxnumlen == value.length && value.indexOf('.') <= 0) {
return false;
}
//Versuchen Sie, den Index von „.“ zu erhalten.
var valueindexof = value.indexOf('.');
if (valueindexof > 0) {
//Wenn das Bit nach dem Index „.“ leer ist, wird definitiv false zurückgegeben.
if (value.charAt(valueindexof + 1) == "") {
return false;
}
}
// Teilen Sie den Wert auf, um den Inhalt davor und danach leicht zu bestimmen
var valuesplit = value.split('.');
//Wenn die Länge des Werts größer als die definierte positive Ganzzahllänge ist
if (Wert.Länge > Zahl) {
if (valuesplit. length == 1) {
return false;
}
//Maximale Länge – die definierte Länge ist länger als die maximale Länge, false.
if (maxnumlen - Zahl >= maxnumlen) {
return false;
}
}
return true;
}
Nachdem Sie ein Validierungsobjekt für das Element zwischengespeichert haben, rufen Sie es einfach auf.
Definition:
$("#example").data("validate", { Zahl: 2, Dezimalzahl: 2 });
Anruf:
validierenNum($("#example));