html5的input的required使用中遇到的问题及解决方法

前端之家收集整理的这篇文章主要介绍了html5的input的required使用中遇到的问题及解决方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

form提交时隐藏input发生的错误

问题描述

在form表单提交的时候,有些input标签被隐藏,表单验证过程中会出现An invalid form control with name='' is not focusable 的错误

虽然我遇到的问题是我的input标签根本没有required属性,但是在该标签隐藏之前,(我的是使用tab栏切换)我输入了错误的格式,再隐藏,这时候他其实是错误的,会被form表单同样去验证,但是由于它被隐藏,浏览器获取不到焦点就会报错。

解决方法

隐藏之前将该input的value值设置为空即可.我的input上面没有使用required属性

如果input含有display:none和required属性,也会产生该错误

产生原因

Chrome希望专注于需要但仍为空的控件,以便可以弹出消息“请填写此字段”。但是,如果控件在Chrome想要弹出消息的时候隐藏,即在提交表单时,Chrome无法关注该控件,因为它是隐藏的,因此表单不会提交。

解决方法

1.隐藏时,将required属性删除

required")

2.没有使用required的话,或许是由于button按钮,类型未设置造成。设置

猜你在找的HTML5相关文章