【发布时间】:2012-09-07 11:12:22
【问题描述】:
我陷入了一个非常不寻常的问题。我有一个用 C# 编写的代码,它只是检查Page_Load 上的IsPostBack 属性。我知道IsPostBack 在页面第一次登陆时仍然为假,并且只有当任何控件将表单发布到服务器时才为真(具有runat=sever)。
我还知道,如果我们点击刷新,IsPostBack 属性应该更改为 false(因为刷新不是回发)。
这是示例代码:
if (!IsPostBack)
{
// If I click on any control on the page, and then hit refresh,
// the code inside this block should execute, but this is not happening.
// After first postback, I tried refreshing the page for more than
// ten times, but always finds IsPostBack=true
// ...
}
else
{
// ...
}
我点击了服务器端按钮(回发),然后点击刷新。我认为它会进入 if 块但没有运气。无论我在浏览器上点击刷新多少次,IsPostBack 总是正确的。这真是我以前从未见过的不寻常的活动。
我非常感谢任何帮助。我需要知道为什么会这样,这是与浏览器相关的问题还是其他问题?我使用了 Mozilla 和 chrome。
每次我点击刷新时,我都会在两个浏览器上收到警告。
在 chrome 上:确认表单提交 您正在查找的页面使用了您输入的信息,返回到该页面可能会导致您重复执行的任何操作。您要继续吗?
在 mozilla 上:确认 要显示该页面,firefox 必须发送将重复任何操作的信息...
提前感谢您的帮助。
普雷文
【问题讨论】:
-
在许多浏览器中,发帖后刷新会导致重新发帖。