html5表单验证

基本表单验证特性介绍

  • 输入灰色的提示 placeholder
  • html5新增类型 email、url、number、range、date(date,month,week,time,datetime,datetime-local)、search、color、tel等
  • 文本框输入一次下次自动提示 autocomplete
  • 下拉框提示 list和datalist
  • 初始化页面input自动获得焦点 autofocus
  • 设置表单元素必填 required
  • 表单验证使用正则 pattern
  • 表单设置了必填,提交表单不验证 novalidate、formnovalidate

html5约束验证API

  • willValidate属性

  • validity属性

    ValidityState

    badInput: false //用户提供了一个浏览器不能转换的input
    customError: false //setCustomValidity()
    patternMismatch: false //pattern
    rangeOverflow: false  //max
    rangeUnderflow: false  //min
    stepMismatch: false  //step
    tooLong: false  //maxlength
    tooShort: false  //minlength
    typeMismatch: false  //不符合某种类型的,例如email、url、tel等
    valid: true
    valueMissing: false  //required
    
  • validationMessage属性

  • checkValidity()方法

    如果元素没有满足它的任意约束,返回false,其他情况返回true。

    <input type="email" id="emails" value="sajkljas@126.com">
    
    if(emails.checkValidity()){
    	alert("是一个邮箱")
    }else{
    	alert("不是一个邮箱")
    }
    
  • setCustomValidity()方法

    设置自定义验证信息,用于即将实施与验证的约束来覆盖预定义的信息。

    <input type="text" required pattern="^\d{4}$" oninput="checkit(this)" placeholder="请输入代码">
    function checkit(obj){
    	var it=obj.validity;
    	if(true===it.valueMissing){
    		obj.setCustomValidity("不能为空!");
    	}else{
    		if(true===it.patternMismatch){
    			obj.setCustomValidity("不能为空!");
    		}else{
    			obj.setCustomValidity("")
    		}
    	}
    }
    

html5自带验证美化

  • :required和:optional
  • :in-range和:out-of-range
  • :valid和:invalid
  • :read-only和:read-write

html5默认气泡修改

思路:阻止默认气泡、创建新气泡。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HTML5 提供了一些新的表单验证规则,可以通过设置 input 元素的 type 属性或添加相应的属性来使用。以下是一些常见的 HTML5 表单验证规则: 1. required 规则:表示该字段为必填项,如果该字段为空则无法提交表单。 2. email 规则:表示该字段必须是一个有效的电子邮件地址。 3. url 规则:表示该字段必须是一个有效的 URL 地址。 4. pattern 规则:表示该字段必须匹配指定的正则表达式。 5. min 和 max 规则:表示该字段的值必须在指定的最小值和最大值之间,适用于数字类型的表单项。 6. minlength 和 maxlength 规则:表示该字段的长度必须在指定的最小长度和最大长度之间,适用于文本类型的表单项。 7. number 规则:表示该字段必须是一个数字类型的值。 8. tel 规则:表示该字段必须是一个有效的电话号码。 9. date、time、datetime、week、month 规则:表示该字段必须是一个有效的日期或时间类型的值。 例如: ```html <form> <label for="email">邮箱:</label> <input type="email" id="email" name="email" required><br> <label for="age">年龄:</label> <input type="number" id="age" name="age" min="18" max="60"><br> <label for="phone">电话:</label> <input type="tel" id="phone" name="phone" pattern="^\d{11}$"><br> <button type="submit">提交</button> </form> ``` 在这个例子中,邮箱输入框设置了 required 规则,表示该字段为必填项;年龄输入框设置了 min 和 max 规则,表示年龄必须在 18 到 60 之间;电话输入框设置了 pattern 规则,表示该字段必须是一个 11 位数字的电话号码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值