【问题标题】:OnSubmit return doesn´t work in SafariOnSubmit 返回在 Safari 中不起作用
【发布时间】:2015-11-06 17:55:06
【问题描述】:

我有一个表格:

onSubmit="return myFunction()"

在我的脚本中:

function myFunction(){
  alert("hello world");
  return false;
}

我已经检查了 Crhome 和 Firefox,一切正常,但在 Safari 中它不会调用 myFunction,也不会调用警报。

有人可以帮助我吗?

【问题讨论】:

  • 是否启用了javascript? (同时检查控制台输出)
  • 您可能有一个 javascript 错误导致您的 javascript 被禁用,请检查控制台。
  • 我正在我的 Safari 浏览器上执行其他脚本。问题出在 onSubmit 上。
  • onsubmit 应该全部小写
  • 天啊,是正确的:S,我不敢相信这=(,我已经失去了 40 分钟寻找答案。谢谢李寅。

标签: javascript html forms safari


【解决方案1】:

尝试将此附加到您的表单:

onsubmit="javascript:myFunction()"

我在 Safari 中对其进行了测试,它对我有用。希望对您有所帮助!

【讨论】:

  • 我试过了,但是当我从 myFunction() 返回 false 时它不起作用;它使提交始终。
【解决方案2】:

试试这个:

document.myForm.onsubmit = function( e ) {
alert("hello world");
};

【讨论】:

    【解决方案3】:

    你也可以这样做,它适用于所有浏览器。

    $( "#target" ).submit(function( event ) {
      alert( "Handler for .submit() called." );
      event.preventDefault();
    });
    

    现在,当提交表单时,会发出警告消息。这发生在实际提交之前,因此我们可以通过在事件对象上调用 .preventDefault() 或从我们的处理程序返回 false 来取消提交操作。

    Source

    【讨论】:

      猜你喜欢
      • 2018-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-01
      • 2018-08-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多