按钮单击发送到新页面

时间:2015-11-02 23:39:00

标签: c# asp.net webforms

我已尝试Response.RedirectServer.Transfer将我带到按钮点击的新页面,但每次我的页面都刷新并且我从未重定向到新页面。我已经验证了我的项目中存在的页面,甚至将页面的名称复制/粘贴到我的语法中,以确保没有奇怪的空格或任何东西,但我永远不会被重定向

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        filldropdowns();
    }
}

protected void btn1_OnClick(object sender, EventArgs e)
{
    Response.Redirect("page2.aspx");
    Server.Transfer("page2.aspx"); 
}

    <div id="btn11" algn="center">
        <asp:Button ID="ClickBtn1" runat="server" Text="Push Me" OnClick="btn1_OnClick" OnClientClick="return ValidateData();" />
    </div>

<script type="text/javascript">
    function ValidateData() {
        var name;
        name = document.getElementById("txtName").value;
        if (name == '' || name.trim() == '') {
            alert("Please enter a valid name");
            return false;
        }
    }
</script>

修改
使用~/将允许重定向,但它会引发以下错误。页面确实存在!

  

无法找到资源。

     

描述:HTTP 404.您正在查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。

     

请求的网址:/page2.aspx

编辑2
如果重要的话,这是我的page2的标记

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="page2.aspx.cs" Inherits="page2" %>

如果我在我的重定向中使用localhost它没有加载任何问题,但我已准备好将其推送到网络的交织中,并且不再使用localhost。我该怎么改成这个?

http://localhost:1444/TestProject/page2.aspx

编辑3
如果它有助于(或重要)我要重定向到.aspx页面的完整位置是这样的:

C:\Users\Habib\Documents\Visual Studio 2015\Projects\Test\TestProject\Page2.aspx

1 个答案:

答案 0 :(得分:0)

您已经显示了已知的语法,无论是Response.Redirect()还是Server.Transfer()这些方法都是通过尝试获得成功的方法。如果您在单步执行代码时遇到了重定向的断点,请告诉我们Page_Load() page2.aspx中的内容。

我们可以帮助进一步诊断和/或排除故障。