【发布时间】:2013-05-10 03:18:33
【问题描述】:
我了解客户端脚本和服务器端脚本之间的区别。我的MasterPage 中有一个 javascript 函数和变量:
<script language="JavaScript" type="text/javascript">
var needToConfirm = false;
window.onbeforeunload = confirmExit;
function confirmExit()
{
if (needToConfirm)
{
needToConfirm = false;
return "Currently in edit mode. If you leave the page now then you will lose unsaved changes."
}
}
</script>
鉴于在我的 ASP.NET(客户端)上我可以将我的 needToConfirm 变量的值更改为 true onClientClick 但默认情况下它是 false。这是一个例子。
<asp:Button ID="btnEdit" runat="server" Text=" Edit " onclick="btnEdit_Click" OnClientClick="needToConfirm = true;" />
现在的问题是,在 C#(服务器端)上,我必须在 if-statement 下将 needToConfirm 设置为 true,但不一定在 Page_Load 上设置:
private void SetDefault()
if (Session[def.ID_CUST] != null)
{
//I want to change the variable value here
}
}
谢谢。
更新
我正在使用 .NET 2.0 Classic 和 WebForms
【问题讨论】:
-
从服务器端直接调用脚本是不可能的。但是您可以使用 ClientScript.RegisterStartup() 脚本。
标签: c# javascript asp.net