wsm777

Bootstrap:bootstrapValidator表单自定义验证

实例:

<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<!DOCTYPE html>
<html>
<head>
<title>11</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link type="text/css" rel="stylesheet" href="static/vendors/bootstrapvalidator/css/bootstrapValidator.css">
    <link type="text/css" rel="stylesheet" href="static/vendors/bootstrap/css/bootstrap.css">
</head>
<body>
<div class="container">
    <br>
        <form class="form-horizontal" role="form" id="form-test">
            <div class="form-group">
                <label for="username" class="col-sm-1 control-label">姓名</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="username" name="username" placeholder="请输入姓名">
                </div>
            </div>
            <div class="form-group">
                <label for="password" class="col-sm-1 control-label">密码</label>
                <div class="col-sm-10">
                    <input type="password" class="form-control" id="password" name="password" placeholder="请输入密码">
                </div>
            </div>
            <div class="form-group">
                <label for="repassword" class="col-sm-1 control-label">确认密码</label>
                <div class="col-sm-10">
                    <input type="repassword" class="form-control" id="repassword" name="repassword" placeholder="请输入确认密码">
                </div>
            </div>
            <div class="form-group">
                <label for="email" class="col-sm-1 control-label">邮箱</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="email" name="email" placeholder="请输入邮箱">
                </div>
            </div>
            <div class="form-group">
                <div class="col-sm-offset-1 col-sm-10">
                    <div class="checkbox">
                        <label>
                            <input type="checkbox">请记住我
                        </label>
                    </div>
                </div>
            </div>
            <div class="form-group">
                <div class="col-sm-offset-1 col-sm-10">
                    <button type="submit" class="btn btn-default" id="btn-test">登录</button>
                </div>
            </div>
        </form>
</div>
</body>
<script src="static/vendors/jquery/js/jquery.min.js"></script>
<script src="static/vendors/bootstrapvalidator/js/bootstrapValidator.js"></script>
<script src="static/vendors/bootstrap/js/bootstrap.js"></script>
<script>
    $(function () {
        $("#form-test").bootstrapValidator({
            live: \'enabled\',//验证时机,enabled是内容有变化就验证(默认),disabled和submitted是提交再验证
            excluded: [\':disabled\', \':hidden\', \':not(:visible)\'],//排除无需验证的控件,比如被禁用的或者被隐藏的
            submitButtons: \'#btn-test\',//指定提交按钮,如果验证失败则变成disabled,但我没试成功,反而加了这句话非submit按钮也会提交到action指定页面
            message: \'通用的验证失败消息\',//好像从来没出现过
            feedbackIcons: {//根据验证结果显示的各种图标
                valid: \'glyphicon glyphicon-ok\',
                invalid: \'glyphicon glyphicon-remove\',
                validating: \'glyphicon glyphicon-refresh\'
            },
            fields: {
                email: {
                    validators: {
                        emailAddress: {//验证email地址
                            message: \'不是正确的email地址\'
                        },
                        notEmpty: {//检测非空
                            message: \'请输入邮箱\'
                        },
                    }
                },
                password: {
                    validators: {
                        notEmpty: {//检测非空
                            message: \'请输入密码\'
                        },
                    }
                },
                repassword: {
                    validators: {
                        notEmpty: {//检测非空
                            message: \'请输入确认密码\'
                        },
                        identical: {//与指定控件内容比较是否相同,比如两次密码不一致
                            field: \'password\',//指定控件name
                            message: \'两次输入的密码不同\'
                        },
                    }
                },
                username: {
                    validators: {
                        notEmpty: {//检测非空,radio也可用
                            message: \'请输入用户名\'
                        },
                        stringLength: {//检测长度
                            min: 3,
                            max: 10,
                            message: \'长度必须在3-10之间\'
                        },
                        regexp: {//正则验证
                            regexp: /^[a-zA-Z0-9_\.]+$/,
                            message: \'所输入的字符不符要求\'
                        },
                    }
                }
            }
        });
 
        function showToast(msg,shortCutFunction)
        {
            toastr.options = {
                "closeButton": true,
                "debug": false,
                "progressBar": true,
                "positionClass": "toast-bottom-right",
                "onclick": null,
                "showDuration": "400",
                "hideDuration": "1000",
                "timeOut": "7000",
                "extendedTimeOut": "1000",
                "showEasing": "swing",
                "hideEasing": "linear",
                "showMethod": "fadeIn",
                "hideMethod": "fadeOut"
            }
            toastr[shortCutFunction](msg,"提示");
        }
 
        $("#btn-test").click(function () {//非submit按钮点击后进行验证,如果是submit则无需此句直接验证
            $("#form-test").bootstrapValidator(\'validate\');//提交验证
            if ($("#form-test").data(\'bootstrapValidator\').isValid()) {//获取验证结果,如果成功,执行下面代码
                showToast("2345678","error");
                alert("yes");//验证成功后的操作,如ajax
            }
        });
    });
</script>

 

    $(\'#forms\').bootstrapValidator({
        // excluded: [\':disabled\', \':hidden\', \':not(:visible)\'],//排除无需验证的控件,比如被禁用的或者被隐藏的
        message: \'通用的验证失败消息\',//好像从来没出现过
        feedbackIcons: {//根据验证结果显示的各种图标
            valid: \'glyphicon glyphicon-ok\',
            invalid: \'glyphicon glyphicon-remove\',
            validating: \'glyphicon glyphicon-refresh\'
        },
        fields: {
            licName: {
                validators: {
                    regexp: {//正则验证
                        regexp: /^[\u4E00-\u9FA5]{2,5}[0-9]{8}$/,      // 表示2-5个汉子加8位数字

\'请输如查桂峰10035608,您输入有误!\' }, notEmpty: {//检测非空 message: \'请输入申请人\' }, } }, } })

 

分类:

技术点:

相关文章: