Jquery中使用Validate插件使表单验证更加简单

场景

效果

介绍

jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自定义方法的 API。所有的捆绑方法默认使用英语作为错误信息,且已翻译成其他 37 种语言。

官方网站:

https://jqueryvalidation.org/

Github:

https://github.com/jquery-validation/jquery-validation/releases/tag/1.19.0

菜鸟教程:

https://www.runoob.com/jquery/jquery-plugin-validate.html

实现

引入js文件

使用官网最新的CDN:

或者将其下载并引入

js文件以及中文语言包下载:

https://download.csdn.net/download/badao_liumang_qizhi/11225659

默认校验规则

序号规则描述
1required:true必须输入的字段。
2remote:"check.php"使用 ajax 方法调用 check.php 验证输入值。
3email:true必须输入正确格式的电子邮件。
4url:true必须输入正确格式的网址。
5date:true必须输入正确格式的日期。日期校验 ie6 出错,慎用。
6dateISO:true必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22。只验证格式,不验证有效性。
7number:true必须输入合法的数字(负数,小数)。
8digits:true必须输入整数。
9creditcard:必须输入合法的信用卡号。
10equalTo:"#field"输入值必须和 #field 相同。
11accept:输入拥有合法后缀名的字符串(上传文件的后缀)。
12maxlength:5输入长度最多是 5 的字符串(汉字算一个字符)。
13minlength:10输入长度最小是 10 的字符串(汉字算一个字符)。
14rangelength:[5,10]输入长度必须介于 5 和 10 之间的字符串(汉字算一个字符)。
15range:[5,10]输入值必须介于 5 和 10 之间。
16max:5输入值不能大于 5。
17min:10输入值不能小于 10。

默认提示

messages: {
    required: "This field is required.",
    remote: "Please fix this field.",
    email: "Please enter a valid email address.",
    url: "Please enter a valid URL.",
    date: "Please enter a valid date.",
    dateISO: "Please enter a valid date ( ISO ).",
    number: "Please enter a valid number.",
    digits: "Please enter only digits.",
    creditcard: "Please enter a valid credit card number.",
    equalTo: "Please enter the same value again.",
    maxlength: $.validator.format( "Please enter no more than {0} characters." ),
    minlength: $.validator.format( "Please enter at least {0} characters." ),
    rangelength: $.validator.format( "Please enter a value between {0} and {1} characters long." ),
    range: $.validator.format( "Please enter a value between {0} and {1}." ),
    max: $.validator.format( "Please enter a value less than or equal to {0}." ),
    min: $.validator.format( "Please enter a value greater than or equal to {0}." )
}

示例代码

// 初始化架构验证
function initOrgAddFormValidate(op) {
    // 架构添加form提交操作
    $("#orgAdd").validate({
        rules: {
            text: {
                required: true,
                remote: {
                    url: '/sysEnterpriseOrg/doValidateByOrgName.do',
                    type: 'POST',
                    data: {
                        name: function () {
                            return $("#orgAdd input[name='text']").val();
                        },
                        id: function () {
                            return $("#orgAdd input[name='id']").val();
                        },
                        op: function () {
                            return op;
                        }
                    }
                }
            }
        },
        messages: {
            name: {
                required: "请输入架构名称",
                remote:"架构名称重复或不可用,请更换后重新尝试!"
            }
        },
        submitHandler:function(form){
            $.post("/sysEnterpriseOrg/doAddSingleOrg.do",$("#orgAdd").serialize()).done(function (res) {
                if(res.status){
                    $("#orgAddModel").modal('hide');
                    $('#org_tree').data('jstree', false).empty();
                    initJsTree();
                    swal({
                        type: 'success',
                        title: '成功提示:',
                        text: "editAction" == op ? "权限编辑成功" : "sameLevel" == op ? "添加同级权限成功" : "添加下级权限成功",
                        confirmButtonColor: "#1ab394",
                    })
                }else{
                    swal({
                        type: 'error',
                        title: '失败提示:',
                        text: "editAction" == op ? "权限编辑失败" : "sameLevel" == op ? "添加同级权限失败" : "添加下级权限失败",
                        confirmButtonColor: "#1ab394",
                    })
                }

            }).fail(function (err) {
                swal({
                    type: 'fail',
                    title: '异常提示:',
                    text:  "editAction" == op ? "权限编辑保存异常" : "sameLevel" == op ? "添加同级权限保存异常" : "添加下级权限保存异常",
                    confirmButtonColor: "#1ab394",
                })
            });

        }
    });
}

其中后他验证部分代码:

 @Description("架构名称字段重复性验证")
    @RequestMapping(value = "/doValidateByOrgName.do", method = RequestMethod.POST)
    @ResponseBody
    public boolean doValidateByPermissionName(String name, String op, String id){
        // 前端条件判断
        if(StringUtils.isBlank(name))
            return false;
        try {
            QueryWrapper queryWrapper = new QueryWrapper<SysEnterpriseOrg>().eq("text",name);
            if("editAction".equals(op))
                queryWrapper.ne("id",id);
            int count = this.mSysEnterpriseOrgService.count(queryWrapper);
            return 0==count?true:false;
        } catch (Exception e) {
            return false;
        }
    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霸道流氓气质

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值