onsubmit=“return false”是什么意思?(JavaScript,jQuery)
What is the meaning of onsubmit="return false"? (JavaScript, jQuery)
我知道提交表单时会发生onsubmit事件。
通常,我们在onsubmit事件上调用一个方法,例如<form action="" onsubmit="myfunction()">
。
今天我看到了这个,"<form action="" onsubmit="return false">"
.它是如何工作的?我不明白onsubmit="return false"
是什么意思.
PS:我在学习Ajax时发现了这个。这是一个教程,解释了如何在不刷新页面的情况下将数据提交到数据库。
这基本上是为了通过JavaScript处理表单提交。
例如 - 用于验证目的
请参阅下面的代码,看看它是如何有益的:
<script language="JavaScript">
myFunctionName() {
if (document.myForm.myText.value == '')
return false;
// When it returns false - your form will not submit and will not redirect too
else
return true;
// When it returns true - your form will submit and will redirect
// (actually it's a part of submit) id you have mentioned in action
}
</script>
<form name="myForm" onSubmit="return myFunctionName()">
<input type="text" name="myText">
<input type="submit" value="Click Me">
</form>
根据 HTML 标准,onsubmit
是事件处理程序的名称。事件处理程序内容属性被视为 JavaScript 函数的 FunctionBody,它将用于处理关联的事件。在"事件处理程序处理算法"的步骤 5 中,它说"按如下方式处理返回值":
- 如果事件是 BeforeUnloadEvent 对象,并且事件的类型是 beforeunload
- 在这种情况下,事件处理程序 IDL 属性的类型将为 OnBeforeUnloadEventHandler,因此返回值将被强制转换为 null 或 DOMString。
- 如果返回值不为空,则:
- 设置事件的已取消标志。
- 如果事件的 returnValue 属性的值为空字符串,则将事件的 returnValue 属性的值设置为返回价值。
- 如果特殊错误事件处理为 true
- 如果返回值为 true,则设置事件的已取消标志。
- 否则
- 如果返回值为 false,则设置事件的已取消标志。
因此,简而言之,return false
将取消事件(或者在这种情况下,取消表单提交)。
如果您
使用的是按钮而不是提交,如下所示:
<form name="myForm" onSubmit="myFunctionName(); return false">
<input type="text" name="myText">
<input type="button" value="Click Me" onclick="myFunctionName()">
</from>
这有效地防止了表单在任何除非在脚本控制下(通过form.submit(),其中不触发提交事件)
参考资料:查询在行动第三版(影响事件传播和语义动作,第143页)
相关文章:
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- Javascript(jQuery)给了我奇怪的结果
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- Javascript/jQuery中的并行Ajax调用
- 我可以在Javascript/jQuery中使用一个变量作为键吗
- Javascript/Jquery/PHP加载页面-如何
- Javascript/Jquery Blob not showing Chrome PDF
- 如何使用javascript/jquery获取iframe的URL的锚点属性
- OnClick/Onhover Javascript/jquery
- 如何从javascript/jquery中的复选框中获取布尔值
- javascript/jquery将utc转换为短格式的本地时间
- 在不设置协议的情况下,使用javascript/jquery更改iframe-src
- 如何向这个javascript/jquery函数添加参数
- 用JavaScript/jQuery点击图片,选中多个方框
- 使用Javascript/JQuery获取JSON GET数据
- 从数组中删除元素的最佳方法是:javascript/jquery
- Javascript/jQuery压缩一个图像正确的评论帖子,并使用Ajax Laravel 5.2保存到控制器中
- 用DRY方式Javascript/JQuery动态替换HTML
- 类似Javascript JQuery的库
- 如何在 Javascript/jQuery 中获取一些随机下拉列表的选定值