日期:2014-05-17  浏览次数:20421 次

为什么刷新页面会触发最近执行过的一个按钮事件?
我在页面上添加了一个按钮btn,同时给这个按钮添加一个onclick事件,比如按一下按钮就添加一条数据到数据表中。
当我运行页面并按下按钮触发这个事件后,直接刷新一次页面,这个时候却发现,我没按按钮都会触发这个onclick事件。因为表中主键id是自动增量,所以这个事件触发后,会将一条实际上内容相同的数据插入到数据表中,产生了重复数据,其他事件也会发生这种情况。
请教一下各位,这是因为什么会这样?是按钮控件的特性还是其他原因?有没有方法可以解决?
在代码中,我只是写了给按钮btn添加事件:OnClick="updateCampus_Click",并在后台代码中定义了"updateCampus_Click"事件而已。

------解决方案--------------------
你点提交的时候直接把页面重新定向到当前页面就可以了 呵呵 比如用
Response.Write("<script>window.location.href='Login.aspx';</script>");
这样无论怎么刷新都不会出现你现在这种情况了
------解决方案--------------------
因为点击了服务器控件,再刷新时,就会提示重试或取消,把该操作用javascript来完成,复杂的操作可以用AJAX来完成
Response.Write(" <script>window.location.href='Test.aspx'; </script>");

------解决方案--------------------
探讨
试过把Redirect替换成Response.Write("<script>document.location=document.location</script>"),该方法和用Redirect出现同样的问题啊。