简体   繁体   English

ASP.NET-将代码隐藏用于菜单单击事件C#

[英]ASP.NET - Use codebehind for a menu click event C#

I have a logout menu using css in my project. 我在项目中使用css退出菜单。 Usually css menu only accepts link via 通常,CSS菜单仅接受通过的链接

<a href="some page here"></a>

Now, what I want is the Logout menu will call function from codebehind. 现在,我想要的是“注销”菜单,它将从代码隐藏中调用函数。 My code for logout button: 我的注销按钮代码:

<li><div class="some css class here"><a>Logout</a></div></li>

and the function I want to call: 和我想调用的函数:

protected void btnLogout_Click(object sender, EventArgs e)
    {
        FormsAuthentication.SignOut();
        Session.Clear();
        Session.Abandon();
        Response.Redirect("~/login.aspx");
    }

Any possible solutions for calling btnLogout_Click on my Logout menu? 在我的注销菜单上调用btnLogout_Click的任何可能的解决方案? Thanks in advance.. 提前致谢..

Try this... 尝试这个...

<li><div class="some css class here"><a id="atag" onserverclick="atag_ServerClick" runat="server">Logout</a></div></li>

In codebehind you have to call the anchor tag's function: 在后面的代码中,您必须调用锚标记的功能:

private void atag_ServerClick(object sender, System.EventArgs e)
{
       atag.Target="url";
}

OR 要么

As per your Requirement: 根据您的要求:

  private void atag_ServerClick(object sender, System.EventArgs e)
    {
        FormsAuthentication.SignOut();
        Session.Clear();
        Session.Abandon();
        Response.Redirect("~/login.aspx");
    }

Hope this helps... 希望这可以帮助...

Instead of using anchor use LinkButton 而不是使用锚使用LinkButton

<asp:LinkButton id="LinkButton1" 
           Text="Logout" 
           OnClick="atag_ServerClick" 
           runat="server"/>

and get your code work :) 并让您的代码工作:)

In short just replace <a>Logout</a> with my code. 简而言之,只需将<a>Logout</a>替换为我的代码即可。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM