【问题标题】:Stopped HTML form from jumping to top of the screen in IE阻止 HTML 表单在 IE 中跳转到屏幕顶部
【发布时间】:2012-09-05 22:53:43
【问题描述】:

如果我做得对,你能建议一下吗?

情况是我有一个 HTML 表单,每次我单击表单边界内的任意位置时,即使是在控件之间的空白处,屏幕也会跳到表单的顶部。再一次,它只发生在 IE 上。

起初我以为它与一些 JQuery 侦听器有关,但是当我删除所有指向 JQuery 的链接时,它仍然继续发生。

所以我所做的是将onclick="return false" 添加到表单属性中。它停止了上面提到的屏幕跳转,所有的 JQuery/PHP 函数都可以正常工作。

我想问一下我解决这个问题的方式是否有负面影响?

提前致谢,

EP

【问题讨论】:

  • 会不会是未封闭的<a name=标签?
  • 为了在这里真正提供帮助,我们需要看看您已经尝试过什么。谢谢
  • 感谢大家的回复,表格大概有1000行,我觉得在这里发帖会很困难,但我会检查所有标签的布局是否正确,谢谢Scott Brown。

标签: php jquery html internet-explorer


【解决方案1】:

即使您的解决方案表面上解决了问题,但很可能问题仍然只是隐藏的。

尝试识别归因于您的<body> 或<form> 元素的任何点击事件,禁用它们,然后重试。

你很可能会在以后遇到这个解决方案,它会引起你现在做更多的挖掘可以避免的头痛。

更新:尝试验证您的代码http://validator.w3.org/

【讨论】:

  • 谢谢你,你是对的,我会深入研究这个问题。我不喜欢迟到的头痛:)
  • 我已经检查过 - 我在表单上没有问题的 onclick 事件,代码验证器没有通过,因为 php echo 创建了许多控件,并且所有字形都破坏了验证。跨度>
  • 发现了问题,这太愚蠢了:我在表单顶部缺少一个结束 **
【解决方案2】:

通过将onclick="return false" 放在<form /> 元素上,您将禁用提交按钮。

Demo Here

【讨论】:

  • 谢谢,在这个特定的表单上,我没有任何 type=submit 按钮。
猜你喜欢
  • 2020-05-11
  • 2017-07-09
  • 1970-01-01
  • 2014-07-07
  • 1970-01-01
  • 1970-01-01
  • 2015-05-26
  • 2012-04-18
  • 1970-01-01
相关资源
最近更新 更多