内联 C# 代码应仅在单击 ASP.NET 时运行
本文关键字:ASP NET 运行 单击 代码 内联 | 更新日期: 2023-09-27 18:29:14
<a href='MainPage.aspx<%=Session["IDs"] = null%>'>Log out</a>
上面的代码是用Navigation.ascx(Web Form User Control(编写的,几乎所有网站页面都注册了导航。现在我希望上面的代码 <%=Session["IDs"] = null%> 仅在我单击注销时运行。
Rite 现在,当我导航到任何页面时,上面的代码每次都会运行。我正在浏览锚标签。
**新代码
<a runat="server" id="alogout" onclick="logout_click" href="#">Log out</a>
受保护的无效logout_click(对象发送器,事件参数 e( { 会话["ID"] = 空; Response.Redirect("Login.aspx"(; }
您有以下几种选择:
-
为 添加 ID:
<'a runat="server" id="my_anchor" href='MainPage.aspx' onclick="anchor_click">Log out</a>
然后在代码隐藏中添加一个方法:
protected void anchor_click(object sender, EventArgs e) { Session["IDs"] = null; }
-
将 href 更改为另一个具有 Session["IDs"] = null 的页面,并重定向到主页.aspx:
<a href='RedirectToMainPage.aspx'>Log out</a>
我已经按照Ziv Weissman的建议使用了选项#2。
- 将 href 值更改为另一个页面。
- 现在在该页面中将会话值更改为空
- 并重定向到某个页面。