bootstrap 报错 验证插件_BootstrapValidator-验证插件

一、使用须知

二、新手上路

1.在页面中引入相应的js和css,要知道bootstrap是基于jquery的,所以先引入jquery和bootstrap

好了,将上述的css和js引入到页面中就可以愉快的开发了。

2. html中的代码(这里只是为了举例拿用户名和邮箱示例一下):

用户名:

邮箱:

提交

注意:使用bootstrapValidator验证插件必须将表单里的组件包裹在

这个标签中,并且一个需要验证的组件对应一个
,这样提示信息才会高亮显示。

3. js中的代码

$(document).ready(function() {

$('#form1').bootstrapValidator({

feedbackIcons: {

valid: 'glyphicon glyphicon-ok',

invalid: 'glyphicon glyphicon-remove',

validating: 'glyphicon glyphicon-refresh'

},

fields: {

'username': {

message: '用户名无效',

validators: {

notEmpty: {

message: '用户名不能为空'

},

stringLength: {

min: 6,

max: 30,

message: '用户名长度在6到30之间'

}

}

},

'email': {

validators: {

emailAddress: {

message: '请输入有效的邮箱格式'

}

}

}

}

});

});

注意:feedbackIcons是设置验证通过和不通过的图标的,fields是用来设置from中具体的表单元素验证的。

三、触类旁通

通过上面的方式我们可以轻松的对表单元素进行各种验证,但是上面这种写法确实分离我们验证的业务代码,但是实际开发中我们更喜欢将验证信息嵌在表单元素中,因为这样会更省时省力,直接copy改就可以了。那么BootstrapValidator这个插件是否支持在表单元素中直接去写呢,答案当然是肯定的。

1. html代码:

用户名:

required data-bv-notempty-message="用户名称不能为空"

data-bv-stringlength="true" data-bv-stringlength-min="6"

data-bv-stringlength-max="30" data-bv-stringlength-message="用户名长度在6到30之间"/>

邮箱:

data-bv-emailAddress="true" data-bv-emailAddress-message= '请输入有效的邮箱格式' />

提交

2. js代码:

$(document).ready(function() {

$('#form1').bootstrapValidator({

feedbackIcons: {

valid: 'glyphicon glyphicon-ok',

invalid: 'glyphicon glyphicon-remove',

validating: 'glyphicon glyphicon-refresh'

}

});

});

3. 不用submit提交,使用点击事件触发校验

页面上有个按钮id为btn_save_id,代码如下

$(document).ready(function() {

$("#btn_save_id").click(function(){

$('#form1').bootstrapValidator('validate');

if($('#form1').data('bootstrapValidator').isValid()) {

//验证通过,执行后续操作

}

});

});

四、牛刀小试

下面是我碰到的一些验证,可以将验证代码直接嵌入到表单元素中

1. 正整数(正则)验证

pattern="^\+?[0-9][0-9]*$" data-bv-regexp-message="请输入正确的数字"

2. 数值类型验证

data-bv-numeric="true" data-bv-numeric-message="请输入数值类型"

3. 长度验证

data-bv-stringlength="true" data-bv-stringlength-min="1"

data-bv-stringlength-max="20" data-bv-stringlength-message="长度最大为20个字符"

4. 自定义验证规则(json验证)

data-bv-callback="true" data-bv-callback-callback="validByJsonFn" data-bv-callback-message="请输入可识别的JSON格式"

//验证是否是{"key":"value"}这种json格式的方法

function validByJsonFn(value) {

var bool=false;

try {

if(value!==""){

if(value.length>8&&value.indexOf("[")!=-1&&value.indexOf("]")!=-1

&&value.indexOf("{")!=-1&&value.indexOf("}")!=-1&&value.indexOf(":")!=-1){

var myjson= JSON.parse(value);

bool=true;

}else{

bool=false;

}

}else{

bool=true;

}

} catch (e) {

bool=false;

}

return bool;

}

5. 表单元素二填一验证(两个input填一个即可)

每天投票数量:

data-bv-callback="true" data-bv-callback-callback="validByVotingFn"

data-bv-callback-message="每天投票数量和总共投票数量必须选填一个"

data-bv-numeric="true" data-bv-numeric-message="请输入数值类型"

data-bv-stringlength="true" data-bv-stringlength-min="1"

data-bv-stringlength-max="11" data-bv-stringlength-message="长度最大为11个字符"/>

总共投票数量:

data-bv-callback="true" data-bv-callback-callback="validByVotingFn"

data-bv-callback-message="每天投票数量和总共投票数量必须选填一个"

data-bv-numeric="true" data-bv-numeric-message="请输入数值类型"

data-bv-stringlength="true" data-bv-stringlength-min="1"

data-bv-stringlength-max="11" data-bv-stringlength-message="长度最大为11个字符"/>

js代码:

function validByVotingFn(value,e,v){

var num1=$("#votesPerDay").val();

var num2=$("#totalVotes").val();

var bool=false;

if(num1||num2){

$("#totalVotes").attr("disabled",false);

$("#votesPerDay").attr("disabled",false);

$("#form1").data("bootstrapValidator").updateStatus("votesPerDay","NOT_VALIDATED",null);

$("#form1").data("bootstrapValidator").updateStatus("totalVotes","VALIDATED",null);

bool=true;

}

if(num1&&num1.length>0){

$("#totalVotes").val("").attr("disabled",true);

}else{

$("#totalVotes").attr("disabled",false);

}

if(num2&&num2.length>0){

$("#votesPerDay").val("").attr("disabled",true);

}else{

$("#votesPerDay").attr("disabled",false);

}

return bool;

}

6. 还有很多很多验证,不过常用的可能基本上也就这些了,后面碰到我再补充上来

五、纵横江湖

重置某个字段验证信息

$("#form3").data("bootstrapValidator").updateStatus("answerList","VALIDATED",null);

注意:第一个参数为表单元素name,第二个参数可以是NOT_VALIDATED,VALIDATING,INVALID或者VALID,第三个参数验证程序名称,如果null该方法更新所有验证器的有效性结果。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值