如何在*表单提交事件后运行一些JavaScript*?

Pau*_*ite 13 html javascript forms

我正在处理一个可能需要几秒钟才能提交的HTML表单.我想在提交禁用表单中的某些字段.

我可以在表单submit事件的处理程序中执行此操作,但这会表单提交之前触发.如果我禁用了控件,那么它们的值不会包含在发送到服务器的后期数据中.

我尝试在我的处理程序中取消提交事件,submit从表单中删除我的事件处理程序,通过JavaScript自己提交表单,然后禁用控件,但问题是我需要知道用户点击了哪个按钮提交表格.此信息以原始格式提交,但显然不在我手动触发的信息中(因为没有点击按钮).

我可以尝试将此信息复制到我的手动表单提交中,但是有一种方法可以在表单提交后运行我的禁用代码吗?

Kev*_*Kev 13

禁用提交按钮不允许进一步提交,您不需要执行任何其他操作.或者,隐藏表单并将其替换为旋转的内容,以便用户迷恋,认为正在发生重要事情.

  • 这个答案的第二句可能是本网站发布的最棒的东西:) (15认同)
  • 如果提交按钮有值,则此方法不起作用。在事件中禁用它不会将其包含在请求中。 (3认同)
  • @OrangeDog我只是通过通过raf禁用提交按钮来解决这个确切的问题,所以它发生在提交事件之后:`requestAnimationFrame(() => btn.disabled = true)` (3认同)