C# 未显示完整页面url时按钮不响应

C# 未显示完整页面url时按钮不响应,c#,asp.net,C#,Asp.net,我有一个网站,比如说地址是: 网站 如果我进入网站,并点击一个按钮,应该弹出一个消息框,它将无法工作 如果我像这样进入网站: website.com/Default.aspx 这两种方式都显示相同的页面,但只有在使用default.aspx名称时按钮才会响应 我试着这样做: if (!Request.Url.ToString().Contains("Default.aspx")) { Response.Redirect("Default.

我有一个网站,比如说地址是: 网站 如果我进入网站,并点击一个按钮,应该弹出一个消息框,它将无法工作

如果我像这样进入网站: website.com/Default.aspx

这两种方式都显示相同的页面,但只有在使用default.aspx名称时按钮才会响应

我试着这样做:

        if (!Request.Url.ToString().Contains("Default.aspx"))
        {
             Response.Redirect("Default.aspx");
        } 
但出于某种原因,这并没有起到任何作用。为什么会发生这种情况,我该如何解决

按钮单击:

protected void btnLogin_Click(object sender, EventArgs e)
{
    try
    {
        Session.Clear();
        Session.RemoveAll();
        Response.Cookies.Clear();
        Login user = new Login(txtID.Text, txtPassword.Text);
        if (user.IsValid)
            whois = user.sc;
        else
        {
            SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["hakerendbConnectionString"].ConnectionString);
            SqlCommand cmd = new SqlCommand("SELECT COUNT(id) FROM tblCEO WHERE id = '" + txtID.Text + "' AND password = '" + txtPassword.Text + "'", conn);
            conn.Open();
            if (cmd.ExecuteScalar().ToString() == "1")
            {
                conn.Close();
                popupCeo.Visible = true;
                return;
            }
            else
            {
                conn.Close();
                ajaxPanel.Alert("ת.ז או סיסמא שגויה.");
                return;
            }
        }
    }
    catch { ajaxPanel.Alert("תקלה במערכת, אנא חזרו מאוחר יותר הבעיה בטיפול."); }
    try
    {
        HttpCookie user = new HttpCookie("UserName", Security.Encrypt(txtID.Text));
        user.Expires = DateTime.Now.AddHours(1);
        if (chkbox.Checked)
            user.Expires = DateTime.Now.AddDays(30);
        Response.Cookies.Clear();
        Response.Cookies.Add(user);
        switch (whois)
        {
            case Security.level.Investor:
                Response.Redirect("InvestorProjectViewer.aspx");
                break;
            case Security.level.Agent:
                Response.Redirect("AgentManager.aspx");
                break;
            case Security.level.SeniorAgent:
                Response.Redirect("SeniorManager.aspx");
                break;
        }
    }
    catch { }
}

如果它真的碰到了同一个页面,那么原因将是在btnLogin的OnClientClick事件处理程序中执行的一些javascript


任何使用document.URL的javascript在两种情况下的行为都会有所不同,因为在一种情况下,URL将以default.aspx结尾,但另一个没有。

我通过创建一个新的Default.html页面解决了这个麻烦,它所做的基本上是重定向到Default.aspx,现在称为Login.aspx。发布按钮单击处理程序的代码。我没有任何OnClientClick事件。那么我该怎么办呢?那么也许你的点击按钮真的起作用了。你试过设置断点吗?我做不到,这个问题只是因为某些原因在服务器上发生的。然后设置这不是一个很好的解决方案。你应该找到你真正的问题所在并加以解决。可能是客户端脚本错误。