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


Posted in HTML / CSS onApril 24, 2018

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属性删除

selector.removeAttribute("required")

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

3.form表单不验证,即添加novalidate属性。(不是最终解决办法)<form novalidate></form>

4.既然是由于使用了display:none造成,同样的visibility: hidden 也会造成问题,那就不使用。通过可以设置css样式opacity: 0;

5.禁用此表单控件。 disabled 这是因为通常如果你隐藏了表单控件,那是因为你不关心它的价值。所以这个表单控件名称值对在提交表单时不会被发送。

$("body").on("submit", ".myForm", function(evt) {
// Disable things that we don't want to validate.
$(["input:hidden, textarea:hidden, select:hidden"]).attr("disabled", true);
// If HTML5 Validation is available let it run. Otherwise prevent default.
if (this.el.checkValidity && !this.el.checkValidity()) {
    // Re-enable things that we previously disabled.
    $(["input:hidden, textarea:hidden, select:hidden"]).attr("disabled", false);
    return true;
}
evt.preventDefault();
// Re-enable things that we previously disabled.
$(["input:hidden, textarea:hidden, select:hidden"]).attr("disabled", false);
// Whatever other form processing stuff goes here.
});

总结

以上所述是小编给大家介绍的h5的input的required使用中遇到的问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
css3让div随鼠标移动而抖动起来
Feb 10 HTML / CSS
一款纯css3实现的鼠标悬停动画按钮
Dec 29 HTML / CSS
html5视频播放_动力节点Java学院整理
Jul 13 HTML / CSS
把富文本的回车转为br标签
Aug 09 HTML / CSS
HTML5到底会有什么发展?HTML5的前景展望
Jul 07 HTML / CSS
基于html5绘制圆形多角图案
Apr 21 HTML / CSS
Web前端页面跳转并取到值
Apr 24 HTML / CSS
canvas简易绘图的实现(海绵宝宝篇)
Jul 04 HTML / CSS
用canvas画心电图的示例代码
Sep 10 HTML / CSS
iframe与window.onload如何使用详解
May 07 HTML / CSS
ivx平台开发之不用代码实现一个九宫格抽奖功能
Jan 27 HTML / CSS
CSS几步实现赛博朋克2077风格视觉效果
Jun 16 HTML / CSS
HTML5轻松实现全屏视频背景的示例
Apr 23 #HTML / CSS
HTML5高仿微信聊天、微信聊天表情|对话框|编辑器功能
Apr 23 #HTML / CSS
HTML5拖拽API经典实例详解
Apr 20 #HTML / CSS
HTML5中的Web Notification桌面右下角通知功能的实现
Apr 19 #HTML / CSS
HTML5实现移动端复制功能
Apr 19 #HTML / CSS
canvas实现漂亮的下雨效果的示例
Apr 18 #HTML / CSS
详解Html5 监听拦截Android返回键方法
Apr 18 #HTML / CSS
You might like
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
JavaScript 盒模型 尺寸深入理解
2012/12/31 Javascript
深入document.write()与HTML4.01的非成对标签的详解
2013/05/08 Javascript
JavaScript判断密码强度(自写代码)
2013/09/06 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
浅谈jquery上下滑动的注意事项
2016/10/13 Javascript
JS中如何实现点击a标签返回页面顶部的问题
2017/01/19 Javascript
微信小程序 自定义Toast实例代码
2017/06/12 Javascript
jQuery开源组件BootstrapValidator使用详解
2017/06/29 jQuery
在Create React App中启用Sass和Less的方法示例
2019/01/16 Javascript
基于Vue中使用节流Lodash throttle详解
2019/10/30 Javascript
javascript实现图片轮换动作方法
2020/08/07 Javascript
浅谈Ant Design Pro 菜单自定义 icon
2020/11/17 Javascript
[36:54]Mineski vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
详解Python中expandtabs()方法的使用
2015/05/18 Python
用python找出那些被“标记”的照片
2017/04/20 Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
TensorFlow实现Softmax回归模型
2018/03/09 Python
Python替换月份为英文缩写的实现方法
2019/07/15 Python
python opencv实现证件照换底功能
2019/08/19 Python
python 实现图片上传接口开发 并生成可以访问的图片url
2019/12/18 Python
python标准库OS模块函数列表与实例全解
2020/03/10 Python
python绘制汉诺塔
2021/03/01 Python
CSS3 box-sizing属性详解
2016/11/15 HTML / CSS
CSS3.0实现霓虹灯按钮动画特效的示例代码
2021/01/12 HTML / CSS
瑞典领先的汽车零部件网上零售商:bildelaronline24.se
2017/01/12 全球购物
茱莉蔻美国官网:Jurlique美国
2020/11/24 全球购物
心得体会范文
2014/01/04 职场文书
社区党员先进事迹
2014/01/22 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
社区助残日活动总结
2014/08/29 职场文书
2014老师三严三实对照检查材料思想汇报
2014/09/18 职场文书
运动会通讯稿600字
2015/07/20 职场文书
六年级语文教学反思
2016/03/03 职场文书
HTML+VUE分页实现炫酷物联网大屏功能
2021/05/27 Vue.js
gojs实现蚂蚁线动画效果
2022/02/18 Javascript