1

我知道双重回发的一般准则,但这一条让我抓狂。这是一个点击按钮。C#。ASP.NET 2.0。当我在生产中单击它时,它会间歇性地发回两次。至少在我迄今为止尝试过的规模上无法从分期中复制。

据我所知,在开始执行此操作之前,代码没有改变,并且逻辑流程当然不会要求在随机时间双击点击代码。我开始深入研究网络跟踪(公平地说,有一些重复的确认和丢弃的段)并想知道是否应该对 Temporary ASP.NET 文件夹进行核对。

还注视着这个返回 true 的 jQuery 模态弹出窗口 .click(function() 调用。我的 Javascript 大脑背后的某些东西让我怀疑。

这个有趣的错误与空白 img 源有关。

4

3 回答 3

4

我只看到当按钮单击调用手动调用 form.submit() 但没有正确取消单击事件的 javascript 时弹出此问题,因此它发布了两次。

我不确定,但我相信如果是这种情况,一个回发将包含 ButtonID=ButtonID 而一个则不会。

于 2009-04-14T11:06:55.113 回答
0

确保您也没有处理其他事件的偶数,例如页面加载、页面初始化

于 2009-04-14T13:07:22.077 回答
0

并确保您在处理表单标签上的 onsubmit 事件时不会以错误的方式导致双重回发。像:

function Loading() {
  $('*').css('cursor','wait'); // To change cursor while waiting for postback
  document.forms[0].submit();  // Cause postback (maybe 2nd time if already fired by Button).
}

<form id="form1" runat="server" onsubmit="Loading();">
于 2018-07-13T14:34:20.140 回答