使用checkValidity()方法进行校验

本文介绍了HTML中checkValidity()方法的使用,该方法用于校验表单内的所有输入是否有效。当表单所有输入有效时,方法将返回true。同时,文中提到了可以结合onclick事件利用return关键字进行表单验证。示例代码展示了在用户点击提交时,如果输入了无效的邮箱地址,表单会显示错误提示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

checkValidity()方法进行校验
返回ture,则证明表单内所有输入都有效
注意:onclick()事件的值,也可以用 return 来写

<input type="submit"  value="提交" onclick="return check();">

checkValidity方法校验 代码如下

<form action="add" method="post">
		生日:
		<input type="date" name="birth" id="brith"><p>
		邮件地址:
		<input type="email" name="email" id="email"><p>
		<input type="submit" value="提交" onclick="return check();">

</form>
<script type="text/javascript">
		function check(){
			return commonCheck("brith","生日","字段必须有效日期")
			&& commonCheck("email","邮件地址","字段必须符合邮箱格式");
		}
		var commonCheck =function(field,fieldName,tip){
			var targetEle = document.getElementById(field);
			//验空
			if(targetEle.value.trim() ==""){
				alert(fieldName + "字段必须填写");
				return false;
			}
			// 调用checkValidity()校验
			else if(!targetEle.checkValidity()){
				alert(fieldName + tip);
				return false;
			}return true;
		}
</script>

在这里插入图片描述
点击提交时,会先检测第一个文本框
在这里插入图片描述
填了不正确的邮箱会显示:
在这里插入图片描述

修改网页的校验规则通常涉及到HTML、CSS和JavaScript验证,以及服务器端的验证。以下是一般步骤: 1. **HTML验证**: 如果你想修改客户端浏览器对表单字段的校验,可以在`<form>`标签内设置`novalidate`属性,取消默认验证。还可以自定义`<input>`元素的`pattern`属性来指定特定的正则表达式。 ```html <form novalidate> <input type="text" pattern="[A-Za-z0-9]*" required> </form> ``` 2. **CSS验证**: CSS主要是用于页面布局和样式,一般不直接处理数据验证。但如果涉及美观提示,可以利用伪类如`:invalid`来改变错误状态下的输入框样式。 ```css input:invalid { border-color: red; } ``` 3. **JavaScript验证**: JavaScript是最常用的客户端验证手段,通过添加事件监听器,当用户提交表单前检查数据是否符合要求。`addEventListener('submit', validateForm)`是一个常见的用法。 ```javascript function validateForm(event) { const email = document.getElementById('email'); if (!email.checkValidity()) { event.preventDefault(); // 阻止表单提交 alert('邮箱格式错误!'); } } ``` 4. **服务器端验证**: 后端语言如PHP、Node.js等会更深入地处理数据验证。你需要编写相应的控制器逻辑,比如检查数据库一致性,或使用框架提供的验证库。 如果你需要详细了解某个特定技术栈的校验规则修改,例如jQuery Validation插件、React Hook Form等,记得提供具体的上下文信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值