2

我正在尝试解决:

name='dob_mm' 的无效表单控件不可聚焦。

Chrome 中出现的错误。是的,我们有一堆必填字段,是的,这些字段是隐藏的。表单被分成选项卡,一次只显示一个。

是否有某种类型的 Jquery 函数可以显示某种类型的弹出窗口,说“您必须在其他选项卡中填写信息”?

我看这里,但没有告诉我太多。

4

1 回答 1

11

您应该进行自己的验证,但作为备份,有一种解决方法可以防止 Chrome 中出现这些错误。

基本方法是这样的:

  • 在提交按钮单击事件中,使用:invalidChrome 添加到出现错误的字段的伪类检测哪个字段未通过浏览器验证。
  • 找到该字段的父容器(例如它所在的选项卡)并使该容器可见。

这将确保将用户定向到出现错误的选项卡,并且 Chrome 的验证不会失败,因为该字段将是可聚焦的。

一个非常基本的版本是这样的:

$('#inputbutton').click(function(){
    //find the invalid field
    $('#myform').find(':invalid').first()
    //find it's parent tab and show it
    .parents('.tab-pane').show();
});
于 2013-06-04T17:16:38.793 回答