Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net Asp按钮不触发OnClick事件_Asp.net_Vb.net - Fatal编程技术网

Asp.net Asp按钮不触发OnClick事件

Asp.net Asp按钮不触发OnClick事件,asp.net,vb.net,Asp.net,Vb.net,我已经搜索了论坛,还没有找到解决我具体问题的方法。我正在用写一个asp.net aspx页面 <asp:Button ID="Add" OnClick="Add_Click" runat="server" Text="Add" CausesValidation="False"/> 我有一个按钮设置类似的另一个页面,它的工作很好。在调试期间甚至不会命中事件。主页(TimeReportingAdd.aspx)在单击时会刷新,我希望它重定向到另一个页面(TimeReportingAdd.

我已经搜索了论坛,还没有找到解决我具体问题的方法。我正在用写一个asp.net aspx页面

<asp:Button ID="Add" OnClick="Add_Click" runat="server" Text="Add" CausesValidation="False"/>
我有一个按钮设置类似的另一个页面,它的工作很好。在调试期间甚至不会命中事件。主页(TimeReportingAdd.aspx)在单击时会刷新,我希望它重定向到另一个页面(TimeReportingAdd.aspx)。按钮未被复制,而是创建为新按钮,事件是通过在设计器中双击创建的。runat=“server”出现在我的所有内容标题等中。我认为我的TimeReporting.aspx页面标题不需要任何验证元素,因为正常工作的页面没有这些元素。添加按钮在我的vb代码中声明如下:

Protected WithEvents Add As Global.System.Web.UI.WebControls.Button
另外,在另一个页面中使用的按钮更简单,甚至没有onclick或validation:

<asp:Button ID="Button1" runat="server" Text="Query" />

Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
...
End Sub

受保护的子按钮1\u单击(发送者作为对象,e作为事件参数)处理按钮1。单击
...
端接头
我已经多次尝试删除按钮并再次添加它。提前谢谢

请删除OnClick=“添加\单击”。这会解决你的问题

您需要考虑两件事:-

  • 当您添加OnClick时,这意味着您希望在Java脚本中处理click

  • 要在服务器端处理单击,您需要在CodeBehind with Handles子句中提供一个方法

  • 第一种方法优先于第二种方法。

    请删除OnClick=“Add\u Click”。这会解决你的问题

    您需要考虑两件事:-

  • 当您添加OnClick时,这意味着您希望在Java脚本中处理click

  • 要在服务器端处理单击,您需要在CodeBehind with Handles子句中提供一个方法


  • 第一种方法会覆盖第二种方法。

    我可以通过在按钮中指定以下属性来实现这一点:

    PostBackUrl="~/TimeReportingAdd.aspx"
    

    它正在发回最初的页面TimeReporting.aspx

    我可以通过在我的按钮中提供以下属性来实现此功能:

    PostBackUrl="~/TimeReportingAdd.aspx"
    

    它被发回最初的页面TimeReporting.aspx

    关键是你说的
    CausesValidation=“False”
    不调用你的事件。尝试将其更改为true。谢谢,但这不会影响它。按钮或事件上是否存在名称冲突(add是非常通用的)?它在更新面板内吗?尝试使用新名称添加一个新按钮,并确保其正常工作。使用OnClick=“Add_Click();”然后也添加javascript函数。对于javascript,使用OnClientClick,但他不需要这样做。关键是你说的
    CausesValidation=“False”
    ,它不会调用你的事件。尝试将其更改为true。谢谢,但这不会影响它。按钮或事件上是否存在名称冲突(add是非常通用的)?它在更新面板内吗?尝试使用新名称添加新按钮,并确保其正常工作。使用OnClick=“Add_Click();”然后也添加javascript函数。对于javascript,使用OnClientClick,但他不需要这样做。不幸的是,这也不会影响事件。谢谢,虽然我刚刚创建了一个与您的代码相同的项目,它正在按预期工作。你能在这里发布你的aspx吗?谢谢你,我在下面的回答中成功地让它工作了。它是发回到原始页面而不是下一个页面,但该属性使其工作。不幸的是,这也不会影响事件。谢谢,虽然我刚刚创建了一个与您的代码相同的项目,它正在按预期工作。你能在这里发布你的aspx吗?谢谢你,我在下面的回答中成功地让它工作了。它是发回到原始页面而不是下一个页面,但该属性使其正常工作。