【问题标题】:Why doesn't this JavaScript work in IE8?为什么这个 JavaScript 在 IE8 中不起作用?
【发布时间】:2011-03-27 02:29:51
【问题描述】:
<form action="http://google.com">
  <input type="submit" onclick="javascript:this.disabled='disabled';return true">
</form>

它在 Firefox 中有效,但在 IE8、Safari 中无效(它应该将我转发到 Google 的站点,但它不会发生。)。为什么?

【问题讨论】:

标签: javascript form-submit


【解决方案1】:

试试这个:

<input type="submit" onclick="this.disabled='disabled';form.submit()">

编辑:根据 wamp 的评论添加了 form.

【讨论】:

  • 我不确定,但它似乎与 IE 的 JavaScript 实现有关。
  • 可能更准确地说,可能是 IE 的 DOM 实现存在问题。或者这可能依赖于扩展,因为我不记得任何全局 submit 函数。
  • 在某些情况下,我需要form.submit(),只是submit 会收到一条错误消息“预期对象”,奇怪..
  • @strager,你说得对,全局 submit 在我的应用程序中不起作用,但在这个简化的示例中起作用,这很奇怪..
  • @wamp - submit() 仅在我测试时有效,但为了安全起见,我从您的评论中添加了 form.
【解决方案2】:

您不需要 javascript: 伪协议。这应该有效:

onclick="this.disabled=true"

而且你不需要返回 true,它会自动发生。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 2012-02-22
    • 2016-12-22
    相关资源
    最近更新 更多