hd_myc 2015-04-24 08:43 采纳率: 16.7%
浏览 5973

兼容-chrome-form提交必填项隐藏问题

chrome 报错 An invalid form control with name='' is not focusable

搜遍google baidu 给的答案是 把必填项required属性去掉
然后在提交之前写了个方法

 var allInput = jQuery("input");
    var allFlag = document.getElementsByTagName("*");
    for (var k = 0 ; k < allFlag.length ; k ++){
        if (allFlag[k].name == "" && allFlag[k].getAttribute("required") == "True") {
            allFlag[k].removeAttribute("required");
        }
    }

    saveSubmit();

但是不好使

  • 写回答

1条回答

  • Go 旅城通票 2015-04-24 08:57
    关注

    不是name=''的问题,是你的含有required属性的控件或者这个控件容器被隐藏起来了不可以见,导致包含required属性的控件无法获取焦点。

    你必须要将这个控件或者父容器设置为可见的。如下面的就会报错。。你需要将text设置为可见的。

     <form onsubmit="return ck(this)"><input type="text" id="t" style="display:none" required /><input type="submit" /></form>
    

    如果你不想将form中的控件内容呈现在页面上,给required 控件增加div容器,absolute定位,left和top设置为负值大点,就不会报错了,但是你这个不在视窗的区域必选要用js设置好值,要不提交不了表单

    
    <form onsubmit="return ck(this)"><div style="position:absolute;left:-9999999px;"><input type="text" id="t"  required /></div><input type="submit" /></form>
    
    评论

报告相同问题?

悬赏问题

  • ¥15 使用C#,asp.net读取Excel文件并保存到Oracle数据库
  • ¥15 C# datagridview 单元格显示进度及值
  • ¥15 thinkphp6配合social login单点登录问题
  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 虚心请教几个问题,小生先有礼了
  • ¥30 截图中的mathematics程序转换成matlab