JavaScript 验证 API
内容摘要
JavaScript 验证 API
文章正文
约束验证 DOM 方法
属性 | 描述 |
---|---|
checkValidity() | 返回 true,如果 input 元素包含有效数据 |
setCustomValidity() | 设置 input 元素的 validationMessage 属性。 |
checkValidity() 方法
如果输入字段包含无效的数据,显示一条消息:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <input id= "id1" type= "number" min= "100" max= "300" required> <button onclick= "myFunction()" >OK</button> <p id= "demo" ></p> <script> function myFunction() { var inpObj = document.getElementById( "id1" ); if (inpObj.checkValidity() == false ) { document.getElementById( "demo" ).innerHTML = inpObj.validationMessage; } } </script> |
约束验证 DOM 属性
属性 | 描述 |
---|---|
validity | 包含与 input 元素的合法性相关的布尔属性。 |
validationMessage | 包含当 validity 为 false 时浏览器显示的消息。 |
willValidate | 指示是否验证 input 元素。 |
合法性属性
input 元素的 validity 属性包含了与数据合法性相关的一系列属性:
属性 | 描述 |
---|---|
customError | 设置为 true,如果设置自定义的合法性消息。 |
patternMismatch | 设置为 true,如果元素值不匹配其 pattern 属性。 |
rangeOverflow | 设置为 true,如果元素值大约其 max 属性。 |
rangeUnderflow | 设置为 true,如果元素值小于其 min 属性。 |
stepMismatch | 当字段拥有 step 属性,且输入的 value 值不符合设定的间隔值时,该属性值为 true。 |
tooLong | 设置为 true,如果元素值超过了其 maxLength 属性。 |
typeMismatch | 当字段的 type 是 email 或者 url 但输入的值不是正确的类型时,属性值为 true。 |
valueMissing | 设置为 true,如果元素(包含 required)没有值。 |
valid | 设置为 true,如果元素值是有效的。 |
实例
如果输入字段中的数字大于 100(input 元素的 max 属性),则显示一条消息:
rangeOverflow 属性
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <input id= "id1" type= "number" max= "100" > <button onclick= "myFunction()" >OK</button> <p id= "demo" ></p> <script> function myFunction() { var txt = "" ; if (document.getElementById( "id1" ).validity.rangeOverflow) { txt = "值太大" ; } document.getElementById( "demo" ).innerHTML = txt; } </script> |
如果输入字段中的数字小于 100(input 元素的 min 属性),则显示一条消息:
rangeUnderflow 属性
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <input id= "id1" type= "number" min= "100" > <button onclick= "myFunction()" >OK</button> <p id= "demo" ></p> <script> function myFunction() { var txt = "" ; if (document.getElementById( "id1" ).validity.rangeUnderflow) { txt = "值太小" ; } document.getElementById( "demo" ).innerHTML = txt; } </script> |
代码注释