当我点击它时,主页面中的Linkbutton没有被触发

时间:2013-07-13 10:53:39

标签: asp.net onclick master-pages linkbutton

我在母版页中有一个链接按钮如下:

<ul class="links">
    <li class="first"><a href="NewsArchive.aspx" title="News">News</a></li>
    <li><a href="MyWishList.aspx" title="My Wishlist">My Wishlist</a></li>
    <li><a href="MainUserPage.aspx" title="My Account">My Account</a></li>
    <li class="last"><asp:LinkButton ID="LoginBTN" runat="server" onclick="LoginBTN_Click" Text="Login"></asp:LinkButton></li>
</ul>

LoginBTN_Click如下:

protected void LoginBTN_Click(object sender, EventArgs e)
{
    if (LoginBTN.Text == "Login")
        Response.Redirect("Login.aspx");
    else
    {
        Session["IsAuthenticated"] = "False";
        Session["UserID"] = ""; Session["Name"] = ""; Session["Lname"] = ""; Session["Email"] = "";
        Session["Address"] = ""; Session["NewsLetter"] = ""; Session["UserStatus"] = ""; Session["LockUser"] = "";
        Session["LastLoginDate"] = ""; Session["Search"] = ""; Session["ShopingID"] = ""; Session["ChangePage"] = "";
        Session["Command"] = ""; Session["ContactID"] = ""; Session["SelectedIndex"] = ""; Session["LockUser"] = "";
        Session["UploadFileName"] = ""; Session["AgancyID"] = ""; Session["ReqCode"] = ""; Session["EditFlag"] = "";
        RegisterLBTN.CssClass = "";
        Response.Redirect("Default.aspx");
    }
}

并在母版页的Page_Load中如下:

if (!Page.IsPostBack)
{
   if (Session["IsAuthenticated"].ToString() == "True")
   {
      LoginBTN.Text = "Exit";
   }
}

当我在本地运行网站时,一切运行良好但是当我在网上运行网站时,我的链接按钮点击事件不会被触发。但令人惊讶的是,当我在注册页面(register.aspx,NewsArchive.aspx,......无关紧要)并点击链接按钮时,我的代码正常工作并重定向到login.aspx页面。 / p>

我不确切地知道问题在哪里?

1 个答案:

答案 0 :(得分:0)

有一个简单的解决方案:

LoginLBTN.PostBackUrl = Request.Url.AbsoluteUri;

在Page_Load()中添加此代码。

最好的问候