繁体   English   中英

表单验证Jquery正则表达式

[英]Form Validation Jquery Regular expression

这是我的脚本:

    <script type="text/javascript">
    $(document).ready(function () {
        $.validator.addMethod(
        "regex",
        function (value, element, regexp) {
            var re = new RegExp(regexp);
            return this.optional(element) || re.test(value);
        },
        "Matricule Invalide"
);
            $("form").validate({
                rules: {
                    idv: { required: true, regex: "/^(\d{3})TN(\d{4})$/" },
                    dd: { required: true },
                    df: { required: true },
                    remise: { required: true, range: [0, 100] }
                },
                messages: {
                  idv: { required:"champs requis", regex: "Matricule Invalide"},
                  dd: "champs requis",
                  df: "champs requis",
                  remise : { required: "champs requis",
                             range: "Valeur doit entre entre 0 et 100"}
                }
            });
        });
    </script>

IDV字段必须以这种正则表达式的其他方式类似于“ 111TN000”或“ 222TN0123”: Number of 3 digets +TN+ Number of Four digets 我创建了我的正则表达式"/^(\\d{3})TN(\\d{4})$/" ,但是这里的问题是,当我将Valide IDV放到我的Jquery函数中时,总是显示Matricule Invalide ,同样的Regulare表达式适用于Java和ASP.net。
我想我在这里想念的很简单吗?

假设您正在使用jQuery validate regex插件(如本问题所述) ,则需要删除前导/尾部的斜杠并在正则表达式中转义其他斜杠:

idv: { required: true, regex: "^(\\d{3})TN(\\d{4})$" }

小提琴的例子


另外,您可以通过删除引号将其变成正则表达式对象:

idv: { required: true, regex: /^(\d{3})TN(\d{4})$/ }

小提琴的例子

我认为您必须删除斜杠

"^(\d{3})TN(\d{4})$"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM