每次页面刷新时都会单击ASP.net按钮

每次页面刷新时都会单击ASP.net按钮,asp.net,Asp.net,我的页面中有一个asp.net按钮,单击该按钮后,每当我刷新同一页面时,它都会被反复单击 我试过了 if (!IsPostBack) { ..... } 用于按钮的单击功能,但在这种情况下,按钮不起作用 <asp:Button ID="btnCommentSubmit" runat="server" Text="Submit" CssClass="leaveAComment" onclick="btnCommentSubmit_Click" />

我的页面中有一个asp.net按钮,单击该按钮后,每当我刷新同一页面时,它都会被反复单击

我试过了

if (!IsPostBack)
   {
   .....         
   }
用于按钮的单击功能,但在这种情况下,按钮不起作用

 <asp:Button ID="btnCommentSubmit" runat="server" Text="Submit" CssClass="leaveAComment" onclick="btnCommentSubmit_Click" />

这就是函数。

如果你没有弄错,你的问题是当你点击按钮后按F5。尝试重新提交表单是正常行为,与asp.net无关,但通常与浏览器相关

F5导致重新执行对服务器的最后一个请求(在您的情况下是POST请求)


避免此问题的一种方法是实现web模式

如果您没有弄错,则问题在于单击按钮后按F5。尝试重新提交表单是正常行为,与asp.net无关,但通常与浏览器相关

F5导致重新执行对服务器的最后一个请求(在您的情况下是POST请求)


避免此问题的一种方法是使用一点JavaScript实现web模式

document.onkeydown = function() {
      if(event.keyCode==116) {
      event.keyCode=0;
      event.returnValue = false;
      }
 }

这将在您点击F5时停止重复重发。

使用一点JavaScript轻松修复

document.onkeydown = function() {
      if(event.keyCode==116) {
      event.keyCode=0;
      event.returnValue = false;
      }
 }

这将在您点击F5时停止重复重发。

显示更多代码,因为到目前为止它没有意义…使用F5,如果我写入相同的地址并刷新它,则没有问题。可能重复显示更多代码,因为到目前为止它没有意义…使用F5,如果我写相同的地址并刷新它,这是没有问题的