35

我在 asp.net 按钮控制中遇到问题。

我在表单中定义了一个按钮,onclick当我单击按钮时,按钮事件没有触发。

<asp:Button ID="btn_QuaSave" runat="server" Text="SAVE" OnClick="btn_QuaSave_Click" /> 

protected void btn_QuaSave_Click(object sender, EventArgs e)
{

}
4

15 回答 15

31

因为您的按钮在其中,control所以可能是另一个控件的验证不允许按钮提交。在我的情况下,结果是向CausesValidation按钮添加属性:

<asp:Button ID="btn_QuaSave" runat="server" Text="SAVE" OnClick="btn_QuaSave_Click" CausesValidation="False"/> 
于 2017-01-01T18:42:14.750 回答
14

您是否从其他页面/应用程序复制了此方法?如果是则它将不起作用,因此您需要删除分配给按钮的事件和事件名称然后转到设计并转到按钮甚至属性转到onClick事件双击它旁边,它会生成事件并自动分配按钮的事件名称。这应该工作

于 2013-03-22T12:16:10.743 回答
7

如果您在 onclick 事件上使用 updatepanel,则可能会发生这种情况。

在您的页面标记中使用 'EnableEventValidation="false"',如下所示:

<%@ Page Language="C#" MasterPageFile="~/ars_home.master" AutoEventWireup="true" CodeFile="Transaction_Window.aspx.cs" Inherits="Transaction_Window" EnableEventValidation="false" %>

希望这可以帮助

于 2014-12-10T07:00:04.293 回答
6

我有同样的问题,我的 aspnet 按钮的点击没有触发。事实证明,页面其他部分的某些地方有一个带有 html“必需”属性的输入。

这听起来可能很奇怪,但是一旦我删除了 required 属性,按钮就会正常工作。

于 2017-08-25T10:37:45.100 回答
3

就我而言,我将required="required"放在CKEditor控件中。
删除此属性解决了该问题。

<CKEditor:CKEditorControl ID="txtDescription" BasePath="/ckeditor/" runat="server" required="required"></CKEditor:CKEditorControl>

<CKEditor:CKEditorControl ID="txtDescription" BasePath="/ckeditor/" runat="server"></CKEditor:CKEditorControl>
于 2014-12-09T21:53:37.930 回答
3

我有一个类似的问题,没有一个答案对我有用。也许有人发现我的解决方案很有帮助。如果您不介意在单击按钮时提交,则仅附加到单击事件设置UseSubmitBehavior="false"可能值得尝试。

于 2018-06-21T08:13:28.763 回答
2

我有同样的问题是否都更改了按钮和所有上述方法然后我做了一件简单的事情我在一个页面上使用两个表单并在表单中使用表单所以我删除了一个并且它有效:)

于 2017-07-11T21:58:18.227 回答
1

尝试Clean您的解决方案,然后再试一次。

它肯定会奏效。因为代码中的每一件事似乎都很好。

通过此链接获取清洁解决方案>

http://social.msdn.microsoft.com/Forums/en-US/vsdebug/thread/e53aab69-75b9-434a-bde3-74ca0865c165/

于 2013-03-22T12:07:21.580 回答
1

尝试在 Visual Studio 中进入设计模式,找到按钮并双击应该设置事件的按钮。否则,一旦在 Design more 中选择了按钮,请转到属性并尝试从那里进行设置。

于 2013-03-22T13:12:03.670 回答
1

为您的验证器元素添加验证组。这允许您区分要包含在验证中的不同组。将验证组也添加到您的提交按钮

于 2015-12-10T08:42:40.333 回答
1

如果 asp 按钮在<a href="#"> </a>标签内,那么Click事件也不会引发。

希望它对某人有用。

于 2017-07-30T12:24:15.337 回答
1

如果将 LinkBut​​ton 嵌套在Repeater中,您必须使用类似于以下内容的内容:

<asp:LinkButton ID="LinkButton1" runat="server" CommandName="MyUpdate">LinkButton</asp:LinkButton>

 protected void Repeater1_OnItemCommand(object source, RepeaterCommandEventArgs e)
 {
    if (e.CommandName.Equals("MyUpdate"))
    {
        // some code
    }
 }
于 2018-09-21T15:13:19.357 回答
1

在我的情况下:确保页面中除了顶部主表单之外不存在任何表单元素,这会导致事件未触发

于 2017-05-31T09:45:46.333 回答
0

如果在您单击提交按钮时它没有引发错误但仍然没有触发单击事件,请尝试添加action="YourPage.aspx"到您的表单中。

于 2014-02-28T22:20:59.153 回答
0

即使我有两种形式,一种用于桌面视图,另一种用于移动视图,删除了一种对我有用的表单。我知道 asp.page 应该只有一种形式。

于 2020-06-03T05:17:47.720 回答