您的浏览器过于古老 & 陈旧。为了更好的访问体验, 请 升级你的浏览器
Ready 发布于2016年05月26日 02:37

原创 jQuery Validator length 字符长度校验器

3255 次浏览 读完需要≈ 6 分钟

内容目录

jQuery Validator的length校验器用于校验指定输入的字符长度是否处于指定的数值范围区间中。

length校验器的用法与range校验器的用法完全相同,只不过前者是对输入的字符长度进行范围校验,后者是对输入的数值进行范围校验。

语法

jQuery Validator 1.0 新增

// 在校验规则对象中指定该属性
length: expression

// 例如:
length: "[6,16]"

参数

参数 描述
expression String类型一个指示数值范围区间的表达式字符串。

表达式expression采用数学上的区间表示法来定义,其格式为"[min,max]"。其中,minmax只能是整数,区间边界符"["和"]"分别表示上下边界闭区间(包含边界值),你也可以使用"("和")"来分别表示上下边界开区间(不包含边界值)。minmax也可以省略其中一个,则分别缺省表示负无穷和正无穷。

以下是一些常见的表达式示例:

  • "[min,max]"表示:输入字符长度必须 >= min 并且 <= max

  • "(min,max)"表示:输入字符长度必须 > min 并且 < max

  • "(min,max]"表示:输入字符长度必须 > min 并且 <= max

  • "(min,)"表示:输入字符长度必须 > min。缺省方的区间边界符,写作开区间、闭区间均可,没有区别(下同)。例如:"(min,)"等价于"(min,]"

  • "[,max]"表示:输入字符长度必须 <= max

  • "[value]"表示:输入字符长度必须 == value

出于严格规范性以及解析性能考虑,目前expression中不能包含任何空白字符。
形如"[min, max]"的写法会在执行校验时抛出错误。

示例&说明

以如下HTML表单为例:

<form action="https://codeplayer.vip/">
	<div>
		<label>密码</label>:
		<input id="password" name="password" type="password" >
	</div>
	<input type="submit" value="提交" />
</form>

我们可以指定对"password"进行非空校验+字符长度范围校验:运行代码

// 定义一个名为"price"的校验规则
v.define("password", {
	// 默认添加required: true,无需显式指定	
	length: "[6,16]" // 密码长度必须在6~16位之间
});
// 当然,系统已经预定了该校验规则,名称为"password",你无需再重复定义,这里只是演示


// 在表单提交时执行校验
$("form").v("submit", {
	"#password": "password"
});
  • CodePlayer技术交流群1
  • CodePlayer技术交流群2

0 条评论

撰写评论

打开导航菜单