更多课程 选择中心


Web培训

400-996-5531

Web培训

web前端开发中JavaScript 验证 API的教程


这篇文章讲述的是web前端开发JavaScript 验证 API的教程。达内web前端培训班正在火热招生中,同学你要不要加入我们呐?在这里小编每天也会分享一下干货给大家。那么今天说道的就是web前端培训课程中的章节。

JavaScript 验证 API

约束验证 DOM 方法

PropertyDescription

checkValidity()如果 input 元素中的数据是合法的返回 true,否则返回 false。

setCustomValidity()设置 input 元素的 validationMessage 属性,用于自定义错误提示信息的方法。

使用 setCustomValidity 设置了自定义提示后,validity.customError 就会变成true,则 checkValidity 总是会返回false。如果要重新判断需要取消自定义提示,方式如下:

setCustomValidity('')

setCustomValidity(null)

setCustomValidity(undefined)

以下实例如果输入信息不合法,则返回错误信息:

checkValidity() 方法

<input id="id1" type="number" min="100" max="300" required> <button onclick="myFunction()">验证</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浏览器错误提示信息

willValidate指定 input 是否需要验证

Validity 属性

input 元素的 validity 属性包含一系列关于 validity 数据属性:

属性描述

customError设置为 true, 如果设置了自定义的 validity 信息。

patternMismatch设置为 true, 如果元素的值不匹配它的模式属性。

rangeOverflow设置为 true, 如果元素的值大于设置的最大值。

rangeUnderflow设置为 true, 如果元素的值小于它的最小值。

stepMismatch设置为 true, 如果元素的值不是按照规定的 step 属性设置。

tooLong设置为 true, 如果元素的值超过了 maxLength 属性设置的长度。

typeMismatch设置为 true, 如果元素的值不是预期相匹配的类型。

valueMissing设置为 true,如果元素 (required 属性) 没有值。

valid设置为 true,如果元素的值是合法的。

实例

如果输入的值大于 100,显示一个信息:

rangeOverflow 属性

<input id="id1" type="number" min="100" required> <button onclick="myFunction()">OK</button> <p id="demo"></p> <script>

function myFunction() { var txt = ""; var inpObj = document.getElementById("id1"); if(!isNumeric(inpObj.value)) { txt = "你输入的不是数字"; } else if (inpObj.validity.rangeUnderflow) { txt = "输入的值太小了"; } else { txt = "输入正确"; } document.getElementById("demo").innerHTML = txt; } // 判断输入是否为数字 function isNumeric(n) { return !isNaN(parseFloat(n)) && isFinite(n); }

</script>
<input id="id1" type="number" max="100"> <button onclick="myFunction()">验证</button> <p id="demo"></p> <script>

function myFunction() { var txt = ""; if (document.getElementById("id1").validity.rangeOverflow) { txt = "输入的值太大了"; } document.getElementById("demo").innerHTML = txt; }

</script>

尝试一下 »

如果输入的值小于 100,显示一个信息:

rangeUnderflow 属性


尝试一下 »

JavaScript 表单验证

JavaScript 保留关键字

1 篇笔记

 

227***1690@qq.com

setCustomValidity 的用法:

var inpObj = document.getElementById("id1");

inpObj.setCustomValidity(''); // 取消自定义提示的方式

if (inpObj.checkValidity() == false) {

if(inpObj.value==""){

inpObj.setCustomValidity("不能为空!");

}else if(inpObj.value<100 || inpObj.value>300){

inpObj.setCustomValidity("请重新输入数值(100~300之间)!");

}

document.getElementById("demo").innerHTML = inpObj.validationMessage;

} else {

document.getElementById("demo").innerHTML = "输入正确";

}

尝试一下 »

更多web培训类相关知识敬请关注web前端培训官网web.tedu.cn

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:web开发中CSS 派生选择器的讲解
下一篇:web前端开发中JavaScript Math(算数) 对象的教程

怎样快速学会web渗透?

Web前端开发培训学习

微信小游戏怎么开发?

Web前端工程师需要掌握哪些知识?

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

贵州省

云南省

广西省

海南省