0

我的情况是这样的,我的用户控件中有一个 asp 按钮

  <asp:Button ID="btnSubmit"
        Text="Send Notification" class="submit-btn01"   onclick="btnSubmit_Click1" runat="server" />

在我的浏览器中,当我刷新页面时,按钮单击事件会自动发生。我无法弄清楚这有什么问题..

4

2 回答 2

3

你的问题有点含糊。听起来您有以下情况之一:

情景一:

  1. 通过 URL 加载页面
  2. 点击提交,刷新页面返回。
  3. 在页面上按 F5,您会收到一条消息,询问您是否要重新提交表单,并且再次发生“提交”按钮操作

场景 B:

  1. 通过 URL 加载页面
  2. 在页面上按 F5 并发生提交按钮操作

对于场景 A;

如果你想避免重新回发,你应该在 btnSubmit_Click1 事件处理程序中对当前页面执行 Response.Redirect() ,如在此处更详细地提到: asp.net prevent form submit两次

对于场景 B;

  1. 您是否在页面中执行任何 javascript 会导致它在每个页面加载时表现不同?
  2. 您是否通过来自不同页面的回发访问该页面?
  3. 您是否在代码隐藏端的页面生命周期中做任何奇怪/花哨的事情?例如 CreateChildControls?

...如果是场景 B,并且答案是否定的,那么我很想知道问题的最终原因是什么,因为我无法想象为什么页面在加载和重新加载之间的行为会有所不同.

于 2012-05-05T13:25:40.703 回答
1

如果是 POST,刷新可能会重复执行的最后一个操作。
由于最后一个操作是使用正在重放的按钮提交表单。

于 2012-05-05T13:35:40.230 回答