验证/事件 - 使用js阻止表单提交的方法是什么?

时间:2014-01-09 10:57:13

标签: javascript forms

好的,这感觉就像一个非常微不足道的问题,而且可能是。但是我希望有人能够解释这个差异,或者指向一个可以解释的源,如何在验证检查发现错误时阻止提交表单。

如果我有一个提交类型的输入,是不是会启动表单提交的点击处理程序?如果将e.preventDefault()放在所描述的输入的click事件中,理论上它不应该起作用吗?如果它不起作用,为什么?是否应该在表单提交事件中实现preventDefault? (从我读到的内容来看,在点击事件中阻止表单提交是不好的做法 - 但我不明白为什么!)

我读过类似的问题,例如' Simplest way to disable button on submission of a form?',它并没有真正回答我的问题。所以,任何人都想帮助一个人出去?

- 编辑 -

我的实际问题是:通过在输入类型=提交的点击处理程序中添加e.preventDefault来阻止表单提交是不好的做法。或者它等同于在jquery form.submit()中添加e.preventDefault?

1 个答案:

答案 0 :(得分:2)

最好将所有代码放在表单的submit()处理程序中。表单可以通过多种方式提交 - 用户可以单击提交按钮,也可以在表单的最后一个字段中按Enter键。这些都将触发表单的submit事件,但不一定是提交按钮的click事件。