jquery.validationEngine表单验证

一、需要插件

<script type="text/javascript" src="js/jquery-2.1.0.js"></script>
<script type="text/javascript" src="js/jquery.validationEngine.js" ></script>
<script type="text/javascript" src="js/jquery.validationEngine-zh_CN.js" ></script>
<link rel="stylesheet" href="css/jquery.validationEngine.css" />


二、demo

自定义验证可以在jquery.validationEngine-zh_CN.js中增加

<!DOCTYPE html>
<html>


	<head>
		<meta charset="utf-8" />
		<title>表单验证测试</title>
		<script type="text/javascript" src="js/jquery-2.1.0.js"></script>
		<script type="text/javascript" src="js/jquery.validationEngine.js"></script>
		<script type="text/javascript" src="js/jquery.validationEngine-zh_CN.js"></script>
		<link rel="stylesheet" href="css/jquery.validationEngine.css" />
	</head>


	<body>
		<form id="signupForm" method="get" action="">
			<p>
				<label for="username">用户名</label>
				<input id="username" name="username" placeholder="请输入用户名..." class="validate[required,custom[userName],minSize[4],maxSize[20]]" />
			</p>
			<p>
				<label for="telephone">手机号</label>
				<input id="telephone" name="telephone" placeholder="请输入手机号码" class="validate[required,custom[telephone]]" />
			</p>
			<p>
				<label for="password">密码</label>
				<input id="password" name="password" type="password" placeholder="请输入密码" class="validate[required,custom[password],minSize[6],maxSize[20]]" />
			</p>
			<p>
				<label for="confirm_password">确认密码</label>
				<input id="confirm_password" name="confirm_password" type="password" placeholder="请确认密码" class="validate[required,equals[password]]" />
			</p>
			<button type="submit">提交</button>
		</form>
		<script>
			$().ready(function() {
				$("#signupForm").validationEngine({
					maxErrorsPerField: 1 ,   // 参数值为数值 
					showOneMessage: true ,  //提交测试后只显示第一个错误
					autoHidePrompt: true ,  //自动隐藏提示信息,以及设置延时多久自动隐藏。
    				autoHideDelay: 2000 ,   // 单位毫秒(ms) 
    				autoPositionUpdate: true //自动调整提示信息位置
				});
				$("#signupForm").submit(function(e) {
					var param = $("#signupForm").validationEngine("validate");
					if(param){
						alert("ok");
					}else{
						alert("no ok");
					}
				});
			});
		</script>
	</body>


</html>



三、验证类型



<!-- 
注:验证规则均写在 validate[] 中,如有多条规则,用英文逗号(,) 分割。 
例:validate[required,minSize[6],custom[onlyLetterNumber]] 
--> 
名称示例说明
requiredvalidate[required]表示必填项
optionalvalidate[optional]表示可选项。若不输入,不要求必填,若有输入,则验证其是否符合要求。
dateRange[name]validate[dateRange[grp1]]验证日期范围
dateTimeRange[name]validate[dateTimeRange[grp1]]验证日期及时间范围
minSize[int]validate[minSize[6]]最少输入字符数
maxSize[int]validate[maxSize[20]]最多输入字符数
groupRequired[name]validate[groupRequired[grp2]]群组中至少输入一项
min[int]validate[min[1]]最小值(该项为数字的最小值,注意与 minSize 的区分)
max[int]validate[max[9999]]最大值(该项为数字的最大值,注意与 maxSize 的区分)
past[date]validate[past[2012/12/20]]日期必需在 date 或 date 的未来。date 格式可写作 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D 或 now
future[date]validate[future[now]]日期必须在 data 或 date 的过去。date 格式可写作 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D 或 now
maxCheckbox[int]validate[maxCheckbox[2]]最多选取的项目数(用于Checkbox)
minCheckboxvalidate[minCheckbox[2]]最少选取的项目数(用于Checkbox)
equalsvalidate[equals[id]]当前控件值需与 id 这个控件的值相同
phonevalidate[custom[phone]]验证电话号码
emailvalidate[custom[email]]验证 Email 地址
integervalidate[custom[integer]]验证整数
numbervalidate[custom[number]]验证数字
datevalidate[custom[date]]验证日期,格式为 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D
dateFormatvalidate[custom[dateFormat]]验证日期格式,格式为 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D
dateTimeFormatvalidate[custom[dateTimeFormat]]验证日期及时间格式,格式为:YYYY/MM/DD hh:mm:ss AM|PM
ipv4validate[custom[ipv4]]验证 ipv4 地址
urlvalidate[custom[url]]验证 url 地址,需以 http://、https:// 或 ftp:// 开头
onlyNumberSpvalidate[custom[onlyNumberSp]]只接受填数字和空格
onlyLetterSpvalidate[custom[onlyLetterSp]]只接受填英文字母(大小写)和单引号(')
onlyLetterNumbervalidate[custom[onlyLetterNumber]]只接受数字和英文字母
ajaxvalidate[ajax[ajaxUserCallPhp]]在验证规则中自定义

"ajaxUserCallPhp":{

"url":"phpajax/ajaxValidateFieldUser.PHP",

"extraData":"name=eric",

"alertTextOk":"* 此帐号名称可以使用",

"alertText":"* 此名称已被其他人使用",

"alertTextLoad":"* 正在确认帐号名称是否有其他人使用,请稍等。"

}

funcCallvalidate[funcCall[functionName]]调用外部函数

四、api方法

名称示例说明
attach$("#form_id").validationEngine("attach");注册表单验证事件
detach$("#form_id").validationEngine("detach");取消注册表单验证事件
validatealert($("#form_id").validationEngine("validate"));验证表单,返回结果 true 或 false
validateFieldalert($("#form_id").validationEngine("validateField","#element_id"));验证单个控件,返回结果 true 或 false
showPrompt$("#element_id").validationEngine("showPrompt","提示内容","load");在该元素上创建一个提示内容,3 种状态:"pass", "error", "load"
hidePrompt$("#element_id").validationEngine("hidePrompt");隐藏该元素的提示内容
hide$("#form_id").validationEngine("hide");关闭表单中的提示
hideAll$("#form_id").validationEngine("hideAll");关闭页面上得所有提示
updatePromptsPosition$("#form_id").validationEngine("updatePromptsPosition")更新提示层的位置


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jQuery Validation是一个流行的前端表单验证插件,在1.8.1版本中,引入了一些新的特性和改进。 首先,1.8.1版本修复了一些之前版本中的bug,提高了插件的稳定性和可靠性。这些bug的修复包括了对表达式中使用特殊字符(如#)的正确处理,处理遇到错误字段时滚动到错误位置的问题,以及处理自定义验证方法的添加和移除的问题等等。 其次,1.8.1版本引入了一些新的验证规则和方法,以满足更多的验证需求。例如,新的email方法可以验证电子邮件地址的格式是否正确,newDate与旧的date方法相比可以更好地处理日期验证,digits方法可以验证一个字段是否只包含数字等等。这些新的方法和规则可以通过简单的配置就可以应用于表单字段。 第三,1.8.1版本在用户体验方面也进行了一些改进。例如,现在可以通过配置来自定义错误消息的显示方式,可以通过highlight和unhighlight方法来自定义验证成功和失败时字段的样式,还可以通过showErrors方法来自定义错误提示的展示方式等等。这样可以更好地与现有的页面样式和布局进行适配。 最后,1.8.1版本还提供了一些新的回调函数和事件,以便于开发者对验证过程进行更为精确的控制和处理。例如,可以通过invalidHandler回调函数来处理整个表单验证失败的情况,可以通过submitHandler回调函数来处理表单验证通过后的提交操作等等。 总之,jQuery Validation 1.8.1版本是一个经过改进和完善的前端表单验证插件,提供了更多的特性和选项,可以满足更多的验证需求,并改善了用户体验和开发者的控制能力。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值