【问题标题】:Function not getting loaded onsubmit in javascript函数未在 javascript 中加载 onsubmit
【发布时间】:2015-05-11 16:05:09
【问题描述】:

我有一个简单的表单(删除了不相关的部分),但 onsubmit 似乎不起作用。

function DisplayOrder() { 
    document.writeln( "<h1>Order Details</h1>" );
}
<form id = "myForm" action="" onsubmit="return DisplayOrder();"  > 
    <input type = "submit" id = "submit"  />
</form>

【问题讨论】:

  • 即使没有return false;,您的代码也可以正常工作。我编辑了您的帖子,您可以看到它正常工作。

标签: javascript html forms onsubmit


【解决方案1】:

你不会在函数结束时返回 false :

function DisplayOrder() { 
    document.writeln( "<h1>Order Details</h1>" ); 
    return false;
}
<form id = "myForm" action="" onsubmit="return DisplayOrder();"  > 
    <input type = "submit" id = "submit"  />
</form>

在函数末尾添加return false 以防止重新加载页面并且不发送表单。 return true 发送表格。默认情况下,如果您不添加return false,则会直接发送您的表单

编辑:

也许你的函数没有加载到你的 DOM 中。尝试像这样声明你的函数:

DisplayOrder = function () { 
    document.writeln( "<h1>Order Details</h1>" ); 
    return false;
}

这样DisplayOrder 将在运行时定义

【讨论】:

  • 为什么需要return false;
  • ...实际上 html 没有显示在页面上 &lt;h1&gt;Order Details&lt;/h1&gt;
  • 它肯定不会与window.onload sn-p 显示的代码一起使用,因为onsubmit 处理程序是在全局上下文中解析的。
猜你喜欢
  • 2021-09-11
  • 2012-08-02
  • 1970-01-01
  • 1970-01-01
  • 2018-08-11
  • 2016-02-18
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
相关资源
最近更新 更多