我有一个带有两个按钮的表单。第一个是使用Javascript隐藏的。
当我在IE中按文本字段输入时,表单不提交。我认为这是因为它选择了第一个按钮作为默认提交按钮,但由于该按钮被隐藏,它不起作用。
我通过在enter keydown Javascript事件上提交表单来解决这个问题。但是,如果用户按Enter键从浏览器的自动完成下拉菜单中选择一个项目,这也会提交表单。
如何在不影响自动填充功能的情况下在IE中输入表单?
答案 0 :(得分:12)
尝试使用以下类隐藏按钮:
.hidden-element {
width: 0px;
height: 0px;
position: absolute;
top: -99999px;
left: -99999px;
}
答案 1 :(得分:6)
几年前我们遇到了类似的问题,而AFAIR,我们在表单的开头添加了一个附加按钮,在IE中按下enter时,它始终执行默认的提交操作。通过为它提供1x1透明图像,该按钮可以“几乎隐藏”。
答案 2 :(得分:5)
我用不透明度0修正了它,如:
<input type="submit" style="width: 0px; height: 0px; opacity: 0;" id="submitBtn" name="submitBtn">
答案 3 :(得分:0)
您可以按以下方式添加其他按钮以保留提交按钮功能:
<![CDATA[<!--[if IE]>]]>
<input type="text" style="display: none;" disabled="disabled" size="1" />
<![CDATA[<![endif]-->]]>