0

首先让我说我不是网络人。我们有一个带有提交按钮的 html 表单,还定义了一个 onClicked 事件。onClicked 事件只是对几个字段进行数据验证。

在即,当按钮被单击两次时,似乎第一个请求被取消并且连接被切断。

在 Firefox 中,当按钮被单击两次时,似乎第一个请求已完成,而第二个请求从未发生。

在 Chrome 中,当按钮被点击两次时,第一个请求完成但在后台并且不会加载到浏览器中,而是第二个请求的结果是显示给用户的结果。

另一个有趣的转折是,如果我运行 fiddler,IE 会表现出与 Chrome 相同的行为。

有人可以向我解释这种行为吗?或者至少告诉我我描述的方式是否是它实际工作的方式?

4

2 回答 2

1

当然我能感觉到你的痛苦,但这取决于浏览器。

我也很痛苦。但是我没有经历所有这些事情(如果你有兴趣,那没关系),我通过正确处理提交按钮来修复它。

当用户submit第一次点击按钮时..我禁用按钮,如果我的验证函数返回 true,表单将提交。

否则我将submit 再次启用该按钮。

这就是我为我的所有形式所做的,以摆脱我们的不同行为TOP BROWSERS

于 2013-02-07T06:44:54.870 回答
1

您可以将submit事件用于表单验证,而不是onClick. 它在所有浏览器中都是一致的,即使用户使用 enter 键提交表单也会触发。

jQuerysubmit事件文档

于 2013-02-07T13:50:47.010 回答