ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] ## 1. bootstrapValidator 表单: ~~~ <form action="" method="POST" role="form" id="form-test"> <legend>Form title</legend> <div class="form-group"> <label for="">label</label> <input type="text" class="form-control" id="" name="text" placeholder="Input field"> </div> <button id="btn-test" class="btn btn-primary">Submit</button> </form> ~~~ ### 1. 给表单对象添加验证规则(需要验证的字段) $("#form-test").bootstrapValidator(验证选项) ~~~ $(function () { $("#form-test").bootstrapValidator({ live: 'disabled',//验证时机,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: { text: { validators: { notEmpty: {//检测非空,radio也可用 message: '文本框必须输入' }, stringLength: {//检测长度 min: 6, max: 30, message: '长度必须在6-30之间' }, regexp: {//正则验证 regexp: /^[a-zA-Z0-9_\.]+$/, message: '所输入的字符不符要求' }, remote: {//将内容发送至指定页面验证,返回验证结果,比如查询用户名是否存在 url: '指定页面', message: 'The username is not available' }, different: {//与指定文本框比较内容相同 field: '指定文本框name', message: '不能与指定文本框内容相同' }, emailAddress: {//验证email地址 message: '不是正确的email地址' }, identical: {//与指定控件内容比较是否相同,比如两次密码不一致 field: 'confirmPassword',//指定控件name message: '输入的内容不一致' }, date: {//验证指定的日期格式 format: 'YYYY/MM/DD', message: '日期格式不正确' }, choice: {//check控件选择的数量 min: 2, max: 4, message: '必须选择2-4个选项' } } } } }); ~~~ ### 1.2 验证 1. 提交验证: $("#form-test").bootstrapValidator('validate') 2. 验证结果:$("#form-test").data('bootstrapValidator').isValid() ~~~ $("#btn-test").click(function () {//非submit按钮点击后进行验证,如果是submit则无需此句直接验证 $("#form-test").bootstrapValidator('validate');//提交验证 if ($("#form-test").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码 alert("yes");//验证成功后的操作,如ajax } }); }); ~~~ ### 1.3 常用事件 #### 1.3.1 重置某一单一验证字段验证规则 ~~~ $(formName).data(“bootstrapValidator”).updateStatus("fieldName", "NOT_VALIDATED", null ); ~~~ #### 1.3.2 重置表单所有验证规则 重置表单中设置过校验的内容,将隐藏所有错误提示和图标。(页面初始化) ~~~ $(formName).data("bootstrapValidator").resetForm(); ~~~ 3. 手动触发表单验证 ~~~ //触发全部验证 $(formName).data(“bootstrapValidator”).validate(); //触发指定字段的验证 $(formName).data(“bootstrapValidator”).validateField('fieldName'); ~~~ 4. 获取当前表单验证状态(即为验证结果) ~~~ // flag = true/false var flag = $(formName).data(“bootstrapValidator”).isValid(); ~~~ 5. 根据指定字段名称获取验证对象 ~~~ // element = jq对象 / null var element = $(formName).data(“bootstrapValidator”).getFieldElements('fieldName'); ~~~ ## 按钮 disableSubmitButtons(boolean) 启用或禁用提交按钮。BootstrapValidator里默认的提交按钮是所有表单内的type属性值为submit的按钮,即[type="submit"]。