Can';当javascript验证失败时,不能阻止表单提交
我正在学习Javascript,这可能是一个非常愚蠢的问题,但我快发疯了。我尝试了各种各样的方法来防止表单在没有运气的情况下提交,所以现在我放置了一个非常简单的函数,它将始终返回false。尽管表格已经提交,有人能解释一下为什么我需要更改,以及我需要更改什么吗?谢谢Can';当javascript验证失败时,不能阻止表单提交,javascript,html,forms,Javascript,Html,Forms,我正在学习Javascript,这可能是一个非常愚蠢的问题,但我快发疯了。我尝试了各种各样的方法来防止表单在没有运气的情况下提交,所以现在我放置了一个非常简单的函数,它将始终返回false。尽管表格已经提交,有人能解释一下为什么我需要更改,以及我需要更改什么吗?谢谢 <form action="http://students.open.ac.uk/mct/tt284/reflect/reflect.php" method="post" name="displayTimeTable" ons
<form action="http://students.open.ac.uk/mct/tt284/reflect/reflect.php" method="post" name="displayTimeTable" onsubmit="return toSubmit();">
<some html>.....
<input type="submit" id="submit" name="submit" value="Submit" />
}在提交按钮上尝试onclick事件,而不是onSubmit
<input type="submit" id="submit" name="submit" value="Submit" onclick="return toSubmit();"/>
对我来说工作很好:
var onSubmit=function(){
返回false;
}
您是否已使用
关闭了
标记?您的代码似乎运行得很好,请看这篇文章,只需使用Javascript即可改善访问者体验。他们可能会关掉它。因此,您还需要在服务器端进行验证。我从一开始就使用Fiddle。HTML标记已正确关闭。请检查控制台是否有任何错误将类型更改为“按钮”。@JoyAdamson您能在jsfiddle.net上创建一个提琴吗?按钮本身不能提交表单,它必须调用提交函数。但在你的情况下,它也必须与提交按钮一起工作。@JoyAdamson我认为这是个问题。。你是用小提琴来检查的吗??在fiddle中,这样的脚本应该放在编写html的同一个框架中,就像这样@JoyAdamson现在就看你的fiddle。。。该函数在脚本框架中不起作用。如果在HTML块中移动它,它现在就可以工作了。@JoyAdamson您的小提琴不工作,因为默认情况下,作用域是“onLoad”,这意味着无论您编写什么函数,它们都是窗口onLoad
事件的本地函数,不能从按钮中调用。在选择“不换行”选项后,查看相同代码的工作方式。
<input type="submit" id="submit" name="submit" value="Submit" onclick="return toSubmit();"/>
<script>
var onSubmit = function() {
return false;
}
</script>
<form action="/" method="post" onsubmit="return onSubmit();">
<input type="submit" />
</form>