龙空技术网

编程技巧:Jquery实时验证,指定长度的「正整数」

天高凭鸟飞海阔任鱼跃 266

前言:

眼前我们对“jquerytextboxlist”大约比较关注,小伙伴们都需要分析一些“jquerytextboxlist”的相关知识。那么小编在网摘上搜集了一些有关“jquerytextboxlist””的相关资讯,希望同学们能喜欢,咱们一起来学习一下吧!

为了保障【正整数】的正确性,做成了通过Jquery,在用户端,实时验证指定长度的【正整数】的方法。

HTML代码

<input type="text" class="force-number-format-10" .../>

JS调用方法

    $(document.body).find("input[type=text]").each(function() {        // 验证输入内容        callCustomiseInputCheck(this);    });

验证【正整数】类型方法

function callCustomiseInputCheck(inputObject) {    jQuery.each(inputObject.classList, function(itemIndex, classItem) {        if (/^force\-number\-format\-\d{1,}$/.test(classItem)) {            //例:<input type="text" class="force-number-format-10" .../>            // 方法【runInputFilter】,参照文章【Jquery实时验证,只能输入指定长度的数字】            runInputFilter(inputObject, ',', function(value) {                var strRegExp = '^\\d{0,' + classItem.split('-')[3] + '}$';                var regExp = RegExp(strRegExp);                return regExp.test(value);            });            //格式化            postLostFocus(inputObject, function(inputObject) {                if (inputObject.value != null) {                    inputObject.value = inputObject.value.replaceAll(/^(0*)(\d*\d{1})$/ig, function($0, $1, $2) {                        return $2;                    });                }                inputObject.value = CommonUtilJs.addComma(inputObject.value);            });        }    });}

共通处理方法

/** * 绑定失去焦点时的处理 * @param textbox HTML输入框 * @param lostFocusFunction 失去焦点时的处理 * 例:postLostFocus(ocument.getElementById("XXX"),functionXXXXX); */function postLostFocus(textbox, lostFocusFunction) {    ["focusout"].forEach(function(event) {        var eventCommonPostLostFocus = function(event) {            lostFocusFunction(this);        }      // 参照文章【前端Jquery调用on或bind方法,避免重复绑定】        addEventExtras(textbox, event, eventCommonPostLostFocus);    });}function CommonUtilJs() { }//数值格式化CommonUtilJs.addComma = function(value) {    var patern = /^([\+\-]?\d+)(\d{3})([\,\d+]*)(\.\d+)?$/;    var rep = "";    var val = "";    if (value != undefined && value != null) {        val = String(value);        while (rep != val) {            rep = val;            val = rep.replace(patern, "$1,$2$3$4");        }    }    return val;};

标签: #jquerytextboxlist