直接上我写的一个实例:
<%@ 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>
</html>