为什么有些表单在单击"输入"按钮时自动提交而其他表单没有?

Usm*_*kil 8 html javascript

问题:

我从不指定提交按钮,因为我使用ajax提交表单,但有些表单具有自动提交功能,无论如何.

背景:

在我的整个应用程序中,我有一个实例,当点击输入按钮将自动提交表单和其他什么都不做的实例.例如; 有时我需要捕获"输入"按钮以获得自动提交,但有时候它似乎只是发生在它自己的上面而我没有找到模式.除了动态创建的表单似乎具有自动提交功能,但静态表单没有?是否有其他人有类似的问题.

例:

我的所有表单都删除了提交按钮,并且我没有指定目标或操作元素,如下所示.所有表单都通过AJAX传输数据.

<form id="ajaxForm">
<input>
</form>
<button>ButtonOutSideForm</button>
Run Code Online (Sandbox Code Playgroud)

不寻找防止自动提交的方法

我已经知道了"onsubmit = return false",e.preventDefault.我不是在寻找一种禁用自动提交的方法.我的问题是为什么它的存在似乎是武断的.谢谢.

Usm*_*kil 5

正如LouD所指出的。如果表单仅包含一个输入元素,则某些浏览器将自动提交。为什么在输入中按Enter键提交具有单个输入字段的表单