0

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

<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 页面。

不知道问题到底出在哪里?

4

1 回答 1

0

有一个简单的解决方案:

LoginLBTN.PostBackUrl = Request.Url.AbsoluteUri;

在您的 Page_Load() 中添加此代码。

此致

于 2017-03-13T10:47:29.240 回答