首页 > 解决方案 > 触发表单提交的各种方法是什么?

问题描述

我正在创建一个插件,该插件需要在提交之前“预处理”任意表单。

问题是这个插件将用于我无法控制的表单上,并且使用它的人不知道如何编码。

我更愿意支持多种不同的提交方案,以最大限度地提高兼容性。

因此,我正在尝试考虑可以触发表单提交的所有各种方式。这是我到目前为止所拥有的:

  1. 单击用或<input>注释的任何字段。type='submit'type='image'
  2. 将焦点Space放在用或<input>注释的字段上。type='submit'type='image'
  3. Space将焦点按在<button>未用 注释的字段上type='reset'
  4. Enter将焦点按在未用 注释的<input>或字段上。<select>type='reset'
  5. 使用 以编程方式提交表单form.submit()
  6. AJAX 提交以多种方式触发(fwiw,这种情况非常复杂,我可能不得不满足于优雅降级)。

我错过了哪些其他可能性?

标签: javascripthtmlforms

解决方案


表单提交触发器

表单元素:被点击的表单元素。
表单类:在表单的类属性中找到的值数组。
表单 ID:表单元素的 ID 属性。
表单目标:表单元素的目标属性。
表单 URL:表单元素的 href 属性值(如果有)。


推荐阅读