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

互联网   04-24 14:42:38   作者:佚名   我要评论

这篇文章主要介绍了h5的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属性删除

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使用中遇到的问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • HTML5触摸事件实现移动端简易进度条的实现方法

    这篇文章主要介绍了HTML5触摸事件实现移动端简易进度条的实现方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-04
  • HTML5声音录制/播放功能的实现代码

    本文通过实例代码给大家介绍了HTML5声音录制/播放功能,非常不错,具有参考借鉴价值,需要的朋友跟随脚本之家小编一起学习吧
    2018-05-03
  • HTML5 video视频字幕的使用和制作方法

    这篇文章主要介绍了HTML5 video视频字幕的使用和制作,HTML5允许我们使用元素为视频指定字幕,需要的朋友可以参考下
    2018-05-03
  • HTML5离线应用与客户端存储的实现

    这篇文章主要介绍了HTML5离线应用与客户端存储的实现的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-03
  • HTML5新增的标签和属性归纳总结

    收集总结的HTML5的新特性,基本除了IE9以下都可以使用。这篇文章给大家介绍了HTML5新增的标签和属性归纳总结,需要的朋友参考下吧
    2018-05-02
  • 浅谈Html5多线程开发之WebWorkers

    这篇文章主要介绍了浅谈Html5多线程开发之WebWorkers的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-02
  • 在HTML5 canvas里用卷积核进行图像处理的方法

    本篇文章主要介绍了在HTML5 canvas里用卷积核进行图像处理的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-02
  • Html5 localStorage入门教程

    这篇文章主要介绍了Html5 localStorage入门教程的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-26
  • html5的input的required使用中遇到的问题及解决方法

    这篇文章主要介绍了h5的input的required使用中遇到的问题及解决方法,文中给大家介绍的非常详细,具有参考借鉴价值,需要的朋友参考下吧
    2018-04-24
  • HTML5轻松实现全屏视频背景的示例

    这篇文章主要介绍了HTML5轻松实现全屏视频背景的示例的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-23

最新评论