首页 > 解决方案 > 当使用 'onchange' 事件优于 'onsubmit' 事件时

问题描述

看下面两个例子:

function myFunction() {
  alert("The form was submitted");
}
 <form onsubmit="myFunction()">
  Enter name: <input type="text">
  <input type="submit">
</form> 

function myFunction() {
  alert("The form was submitted");
}
 <div onchange="myFunction()">
  Enter name: <input type="text">
</div> 

如您所见,两个代码片段之间的主要区别在于提交按钮存在于第一个片段中,但在第二个片段中省略。

这不是唯一的原因(提交按钮)更喜欢使用 'onsubmit' 而不是 'onchange' 事件。我的意思是,表单元素提供了原生表单验证功能,这使它成为处理用户输入的非常强大的工具。是否有任何理由更喜欢使用 div(带有 onchange attr.)元素而不是 form(带有 onsubmit attr.)元素。

一些现实世界的用例将帮助我建立一个坚实而直观的理解。

标签: javascriptjqueryhtmlformsblink

解决方案


onchange 事件在元素的值已更改时发生。当您尝试提交表单时会发生 onSubmit 事件


推荐阅读