BootstrapValidator,最好用的bootstrap表单验证插件

本篇推荐一款twitter做的BootstrapValidator,本身Bootstrap就是twitter做的,那么使用原配的validator也就更值得信赖。从百度上搜BootstrapValidator会出现很多款,但我只推荐这款(突然感觉自己有点“库【Steve 库里】吹”的感觉)。

这里写图片描述

###一、一睹为快
这里写图片描述
为了简便的介绍,这里只做为空的check。

BootstrapValidator官方下载地址

###二、资源引用

下载完资源包后,你可以看到如下的目录。
这里写图片描述

然后把以下三个文件引入到你项目。

<link type="text/css" rel="stylesheet" href="${ctx}/components/validate/css/bootstrapValidator.css" />
<script type="text/javascript" src="${ctx}/components/validate/js/bootstrapValidator.js"></script>
<script type="text/javascript" src="${ctx}/components/validate/js/language/zh_CN.js"></script>

###三、会员名称不为空项目配置

<form class="form-signin required-validate" action="${ctx}/login" method="post" οnsubmit="return validateCallback(this)">
	<div class="form-group">
		<div class="row">
			<label>账户</label>
			<input class="form-control" type="text" autofocus name="username" placeholder="请输入会员编号" autocomplete="off"
				data-bv-notempty />
		</div>
	</div>
</form>
  1. data-bv-notempty表示该会员编号要做为空check。
  2. form-group的div是必须的,否则会报“too much recursion”错误。
  3. form表单提交的时候会执行validateCallback方法,该方法在第五步中具体介绍。

###四、页面加载完成后启用bootstrap validator


$(function() {
	// validate form
	$("form.required-validate").each(function() {
		var $form = $(this);
		$form.bootstrapValidator();
		
		// 修复bootstrap validator重复向服务端提交bug
		$form.on('success.form.bv', function(e) {
			// Prevent form submission
			e.preventDefault();
		});
		
		
	});
});
  1. 在form表单上加上‘class=“required-validate”’属性,然后通过jquery获取对应form表单,对其执行默认的bootstrapValidator加载。
  2. 一定要注意上面代码中注释部分代码,具体介绍可参照修复BootstrapValidator重复提交的bug

###五、form表单提交时验证项目

function validateCallback(form, callback, confirmMsg) {
	YUNM.debug("进入到form表单验证和提交");

	var $form = $(form);

	var data = $form.data('bootstrapValidator');
	if (data) {
	// 修复记忆的组件不验证
		data.validate();
		
		if (!data.isValid()) {
			return false;
		}
	}

	
	$.ajax({
		type : form.method || 'POST',
		url : $form.attr("action"),
		data : $form.serializeArray(),
		dataType : "json",
		cache : false,
		success : callback || YUNM.ajaxDone,
		error : YUNM.ajaxError
	});

	return false;
}
  1. validateCallback中获取form表单后,通过isValid方法可以返回表单验证是否通过。
  2. 当表单验证通过后,再通过ajax将表单提交到服务端。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

沉默王二

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

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

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

打赏作者

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

抵扣说明:

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

余额充值