0

我在 ASP .NET 页面上有一个表单,按钮 onclick 事件附加到 doPostBack 函数。但是,当我单击该按钮时,表单会提交两次。服务器端调试器进入 Page_Load 两次,Fiddler 记录两个 aspx 请求等,没有 302 重定向等,这是一个非常简单的页面。

当我在 __doPostBack 函数中设置断点时,它也会被调用一次(也许这只是一种错觉)。

是否有机会更深入地调试客户端以找到问题?

谢谢,帕维尔

4

3 回答 3

1

您是否手动连接事件处理程序?如果是这样,您应该检查 ASPX 的 Page 指令中的 AutoEventWireup="true" 是否。如果是这样,请将其更改为 false 或删除手动接线。当您使用设计器文件将旧页面升级到较新的 Web 应用程序格式时,可能会发生这种情况。

于 2010-07-27T14:00:08.117 回答
1

行。明白了:输入 type="image" 有

onclick="__doPostBack(.....)" 

当我将其修改为:

onclick="_doPostBack(...); return false;"

两个请求问题消失了。Fiddler 只记录了一个请求,Page_Load 被调用一次,一切都很整洁。

所以在使用会导致点击时自动提交表单的 HTML 元素时要小心;)

谢谢,帕维尔

于 2010-07-28T11:15:28.493 回答
0

听起来有两件事会导致回发。该按钮是一个提交按钮并且还有一个 onclick 处理程序吗?这会导致这种行为。

您在 Fiddler 中看到的 2 个 ASPX 请求是相同的,还是略有不同?

于 2010-07-27T14:00:16.540 回答