点击asp:按钮控制形成动作

时间:2012-02-26 07:34:21

标签: asp.net

<form id="form1" action="Detail.aspx" runat="server">
  <input type="submit" id="save" name="Submit" value="Save and Add"/>
  <asp:Button ID="Exit" runat="server" Text="Exit" onclick="Exit_Click" />
</form>

代码隐藏

 protected void Exit_Click(object sender, EventArgs e)
   {
    Response.Redirect("Show.aspx");
   }

当我单击Exit按钮时,响应不会显示为Show.aspx。它转到Details.aspx。我无法理解为什么控件没有传递给Show.aspx;

3 个答案:

答案 0 :(得分:0)

点击表单中的按钮会提交表单,请查看http://www.w3schools.com/aspnet/aspnet_forms.asp

答案 1 :(得分:0)

请使用此方法:Response.redirect(Server.MapPath(“Show.aspx”));

Show.aspx可能会进入你网站的一个文件夹,所以你应该像“/Home/Customer/Show.aspx”那样编写页面的显式路径,但是在Asp.Net中你可以使用Server.Mappath方法让它服务器为您提供文件的位置,也就是说,此方法返回页面的显式路径。

答案 2 :(得分:0)

我在网站上添加了一个与您描述的内容相匹配的新页面,它似乎完全符合您的要求:

在背后的代码中:

using System;

namespace MyProduct.Web.Pages
{
    public partial class Details : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                Response.Write("If this text is visible then it works...");
            }
        }

        protected void Exit_Click(object sender, EventArgs e)
        {
            Response.Redirect("Show.aspx");
        }
    }
}

在标记中:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Details.aspx.cs" Inherits="MyProduct.Web.Pages.Details" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" action="Details.aspx" runat="server">
      <input type="submit" id="save" name="Submit" value="Save and Add"/>
      <asp:Button ID="Exit" runat="server" Text="Exit" onclick="Exit_Click" />
    </form>
</body>
</html>

如果我单击“保存并添加”按钮,那么我将保持在同一页面上(Details.aspx),我看到文本“如果此文本可见,那么它可以工作......”

如果我点击“退出”按钮,那么我将进入名为Show.aspx的页面

确保您的aspx页面顶部有AutoEventWireup =“true”。这可能就是你没有点击Exit_Click处理程序的原因。

我希望这会有所帮助