首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LinkButton单击事件

LinkButton单击事件
EN

Stack Overflow用户
提问于 2009-07-08 01:19:23
回答 2查看 8K关注 0票数 0

我有这个问题..我有一个“登录”链接按钮和一个"UserList“链接按钮在一个母版页。当用户登录并单击" UserList“链接按钮时,具有上面提到的母版页的UserList页面将打开。(我已经实现了这一点)。

但是如果用户没有登录,而他点击了"UserList",那么应该调用“登录”链接按钮的点击。我如何才能做到这一点?请帮帮我..

EN

回答 2

Stack Overflow用户

发布于 2009-07-07 17:31:08

试试这个:

MasterPage的HTML中:

LinkButtonLogin's onclick事件定义事件处理程序:

代码语言:javascript
复制
<asp:linkbutton id="LinkButtonLogin" runat="server" 
    text="Login" onclick="LinkButtonLogin_Click"></asp:linkbutton>

创建一个从视图中隐藏的虚拟按钮。然后,对于ModalPopupExtender,,将ModalPopupExtender控件的TargetControlIDLinkButtonLogin更改为ButtonInvisible.这有效地将ModalPopupExtender伪装成可隐藏/可显示的代码。

代码语言:javascript
复制
<asp:button id="ButtonInvisible" runat="server" style="display: none;" />

MasterPage的代码背后

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    /*             
        This adds a client-side event to your HyperLink control that mimics
        LinkButtonLogin's onclick event, but ONLY if the current user is not 
        logged in.
    */
    if (!UserIsLoggedIn())
    {
        HyperLinkUserList.Attributes.Add("onclick", 
            "document.getElementById('" + 
                LinkButtonLogin.ClientID + "').click();");
    }
}

protected void LinkButtonLogin_Click(object sender, EventArgs e)
{
    // check if the user is logged in.       
    if (!UserIsLoggedIn())
    {         
        // show the modal login window
        ModalPopupExtender.Show();
    }
    else
    {
        /* 
           This assumes that you always want a user to 
           go to the UserList page upon being logged in.
           You can add some code here to redirect to 
           different pages based on certain criteria.
        */
        Response.Redirect("userlist.aspx");
    }
}
票数 0
EN

Stack Overflow用户

发布于 2009-07-07 17:40:10

一种方法是在web.config文件中添加一个授权部分,当用户单击UserList链接但用户未登录时,该部分将触发登录页面:

代码语言:javascript
复制
<location path="UserList.aspx">
    <system.web>
        <authorization>
            <deny users="?"/>
        </authorization>
    </system.web>
</location>

如果对您的应用程序有意义,您甚至可以使用<asp:LoginView>控件对未登录的用户隐藏用户列表链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1093610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档