我有一个由列表项组成的导航栏。在导航栏的末尾,我想要一个注销链接:
//other links
...
<li>
<a href="#"> logout </a>
</li>
我的C#代码中有一个名为Logout_Click(object sender, EventArgs e)
的事件,我希望在用户点击上面的导航栏链接时运行该事件,但显然普通<a>
标记不会触发ASP.NET点击事件。
所以我认为我会聪明并创建一个名为logout的HIDDEN <asp:Button>
,它会触发Logout_Click
函数,然后让JavaScript为我点击按钮..这是我的代码:
<a href="javascript:document.getElementById('logout').click();" class="top">Log Out</a>
<form runat="server">
<asp:Button ID="logout" runat="server" onclick="Logout_Click" Visible="false" />
</form>
但它仍然没有用。
有人可以帮助我吗?
答案 0 :(得分:3)
你可以尝试在asp:按钮上没有Visible =“false”吗?
如果它有效,则用css隐藏它,style =“display:none;”
答案 1 :(得分:3)
尝试:
<a href="javascript:document.getElementById('<%= logout.ClientID %>').click();" class="top">Log Out</a>
答案 2 :(得分:0)
我认为脚本需要你的asp.net控件的客户端id:
javascript:document.getElementById('<%=logout.ClientID').click()
答案 3 :(得分:0)
或者您可以使用__doPostBack函数...
http://wiki.asp.net/page.aspx/1082/dopostback-function/ enter link description here
答案 4 :(得分:0)
为什么不使用Asp.net LinkButton? 使用LinkButton很容易做到这一点。