【问题标题】:ASP.NET Webform OnClick event not firing properlyASP.NET Webform OnClick 事件未正确触发
【发布时间】:2017-12-13 00:49:39
【问题描述】:

我有一个带有一堆 asp 控件的默认页面(初始登录页面),一切都很好。我还有一个带有一个 asp 按钮控件的管理页面(我为帖子简化了)。两者都包含在 Site.Master 页面上的表单元素中。按钮单击事件不会在我的管理页面上触发。这是我的按钮事件和页面代码/背后的代码:

页面代码

<%@ Page Title="Admin1" Language="C#" MasterPageFile="~/Site.Master" 
AutoEventWireup="true" CodeBehind="Admin1.aspx.cs" 
Inherits="HPRMWebClientReporting.Admin1" %>         

 <asp:Content runat="server" ID="AdminContent" 
    ContentPlaceHolderID="AdminContent">
    <asp:Button ID="ButtonGo" runat="server" Text="Button" Width="111px" 
    OnClick="ButtonGo_Click" />
</asp:Content>

代码背后

public partial class Admin1 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {

        }
    }

    protected void ButtonGo_Click(object sender, EventArgs e)
    {
        this.Context.Items["Msg"] = "It worked!!!.";
        Server.Transfer("MessagePage.aspx");
    }
}  

会发生什么:

  1. 浏览默认页面的Page_Load
  2. 遍历 Site.Master 页面的 Page_Load
  3. 刷新我的网站并显示默认页面

单击按钮时,它不会发生我的单击事件或管理页面的 Page_Load 吗?单击按钮应该会将其带到 MessagePage 页面。

这快把我逼疯了。我确实尝试在按钮上将原因验证设置为 false,但没有成功。有什么想法吗?

注意:另外,也许这会帮助某人确定我做错了什么。我更改了页面代码,因此它不使用 MasterPageFile Site.Master,我只是将按钮包装在它自己的表单元素中,它工作正常,但我不希望它以这种方式工作,因为我想使用母版页。

【问题讨论】:

  • 看来您应该使用 MasterPage 来完成您的工作。

标签: c# asp.net webforms


【解决方案1】:

我发现了一些可行的方法,尽管我不完全确定为什么没有进一步的研究。在我的 Site.Master 页面和我在帖子中提到的表单元素中,我取出了 action="/",现在我的控件也可以在管理页面上正常工作了。

 <form id="Form1" action="/" method="post" runat="server">     
    <asp:ContentPlaceHolder ID="HomeContent" runat="server">
    </asp:ContentPlaceHolder>
    <asp:ContentPlaceHolder ID="ContactContent" runat="server">
    </asp:ContentPlaceHolder>
    <asp:ContentPlaceHolder ID="AboutContent" runat="server">
    </asp:ContentPlaceHolder>
    <asp:ContentPlaceHolder ID="AdminContent" runat="server">
    </asp:ContentPlaceHolder>
</form>

【讨论】:

  • 应该没问题,我的母版页上的表单如下所示:
  • 感谢您确认表单元素。我为此苦苦挣扎了几天,甚至没想到这可能是大师的东西。
猜你喜欢
  • 1970-01-01
  • 2013-04-30
  • 2013-03-12
  • 2013-04-25
  • 1970-01-01
  • 2016-03-17
  • 2020-05-01
  • 2020-01-31
  • 2011-02-05
相关资源
最近更新 更多