下面的属性可以被用来在表单控件中描述约束:
required: 告诉用户必须输入一个值。
pattern=“[a-z]”: 告诉用户必须输入一个可以匹配给定 JavaScript 正则表达式的值。
minlength=x: 告诉用户必须输入一个至少有 x 个字符的值。
maxlength=y: 告诉用户必须输入一个至多有 x 个字符的值。
min=x: 告诉用户必须输入一个大于或者等于 x 的值。。
max=y: 告诉用户必须输入一个小于或者等于 y 的值。
step=x: 告诉用户必须输入一个在 min 的基础上加上 x 的倍数的值。
约束验证
约束验证可以用以下集中方式触发:
可以在一个表单元素或者特定的表单控件上调用 checkValidity() 。这个方法会在有约束被违反的时候返回 false。同时它也会在违反约束的元素上触发一个叫做“invalid”的事件。可以使用通过表单控件上的“validity”属性所暴露的 ValidityState 对象来检查违反了哪个约束。
可以在一个表单约束或者特定的表单控件上调用 reportValidity()。这样做会触发针对约束的交互式验证。此外 checkValidity(), reportValidity() 也会将输入焦点放到第一个被检查出违背了约束的元素上,并且在其旁边显示一个气泡消息来对问题进行描述。
交互式表单验证也会在提交表单的时候发生,除非在元素上设置了“novalidate”属性。