在我们的项目中,我们正在删除用户离开页面后的东西。我们使用window.unload事件来做到这一点。如何确定window.onunload中的PostBack值?
window.onunload = function() {
// delete something
}
我们通常使用的UpdatePanel按钮,linkbuttons..etc所以我们没有需要检查Page.IsPostBack属性。
今天我们意识到我们使用了UpdatePanel中的一些按钮,这种情况产生了一些错误。之后,我们决定改变我们的方法,定义一个全局变量(VAR _isPostBack = FALSE),在我们的页面的顶部和:
window.onunload = function() {
if (_isPostBack) {
_isPostBack = false;
return;
}
// delete something
}
Altought我设置在Page_Load中的g_isPostBack,g_isPostBack没有改变。我尝试了“RegisterClientScriptBlock”,“RegisterOnSubmitStatement”和“RegisterStartupScript”方法。注册方法进行的onunload事件之前调用,但_isPostBack在onunload事件后设置触发了......
if (IsPostBack)
{
Control c = MyClass.GetPostBackControl(this);
bool inUpdatePanel = ControlParentForUpdatePanel(c);
if (!inUpdatePanel)
{
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), Guid.NewGuid().ToString(), "_isPostBack = true;", true);
}
}
是否有任何人帮助我吗?
是变量“g_isPostback”还是“_isPostback”? – kochobay
sory我的错......我写错了他们。他们都是“_isPostBack”。 – ogun
我不确定在ajax帖子上调用onunload方法。 – kochobay