【问题标题】:OnClick Event Not Firing on Button Click ASP.NETOnClick 事件未触发按钮单击 ASP.NET
【发布时间】:2020-05-01 10:13:14
【问题描述】:

我有一个位于 JavaScript 对话窗口中的 asp:Button。它有一个名为 DialogWindowButton_Click 的 OnClick 事件,如下面的代码所示。该事件没有触发,我在 C# 文件中放置了断点,它甚至没有进入函数。我不确定为什么,并查看了其他论坛帖子以试图解决这个问题。我有 1)删除按钮并重新创建按钮和 OnClick 事件本身(这不起作用),以及 2)将 CausesValidation="False" 添加到 asp:Button 标记。这两种途径都没有奏效。我所拥有的如下所示:

<div style="margin:auto; width:100px; padding-bottom:15px;">
    <asp:Button ID="DialogWindowButton" runat="server" Text="Save Entry" 
    OnClick="DialogWindowButton_Click" CausesValidation="False"/>
</div>

然后在 C# 文件中,我有:

    ...
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void DialogWindowButton_Click(object sender, EventArgs e)
    {
        DialogWindowButton_ClickHelper();
        ...
    }

    protected AddressBookEntry DialogWindowButton_ClickHelper()
    {
        ...
    }
    ...

我有 CodeBehind 标记和 Inherits 标记的正确文件。在 C# 文件中,您可以看到原始 OnClick 事件调用直接在其下方定义的辅助函数,但未到达 DialogWindowButton_Click() 顶部的断点。也没有构建错误。可能还有其他我想念的东西吗?谢谢!

【问题讨论】:

  • aspx页面的CodeBehindInherits是什么?当您尝试打开页面时是否会触发 Page_Load?
  • 只需在 Page_Load 上设置一个断点,它确实会按预期触发。原始文件是 AddressBook.aspx。 CodeBehind 是 AddressBook.aspx.cs。而继承是_321SOS.WebForm1。
  • 你试过设置UseSubmitBehavior为false(默认为true)。
  • 是的,这行得通!谢谢!这个属性是如何使它工作的?
  • 我已经添加了解释的答案。请检查。

标签: c# asp.net onclick event-handling


【解决方案1】:

您需要将UseSubmitBehavior 设置为false(默认为true):

 <asp:Button ID="DialogWindowButton" runat="server" Text="Save Entry" 
    UseSubmitBehavior="False" OnClick="DialogWindowButton_Click" CausesValidation="False" />

来自Reference

使用 UseSubmitBehavior 属性指定是否为 Button 控件 使用客户端浏览器的提交机制或 ASP.NET 回发 机制。默认情况下,此属性的值为 true,导致 按钮控件使用浏览器的提交机制。如果您指定 false,ASP.NET 页面框架将客户端脚本添加到页面 将表单发布到服务器。

【讨论】:

  • 有了这个 UseSubmitBehavior="false" 属性,但是,我相信我试图在 DialogWindowButton_ClickHelper() 函数中保存到数据库的字段无法这样做。你知道解决这个问题的方法吗?
  • 对不起,但我认为您还有另一个与当前问题无关的问题,因此很难理解。你可以再问一个足够详细的问题。
  • 我在下面添加了一个答案,希望能帮助您更好地了解我的连接。
  • * 更好地理解我的问题
猜你喜欢
  • 2010-10-21
  • 2011-12-02
  • 2014-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-21
  • 1970-01-01
相关资源
最近更新 更多