You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET C#如何触发按钮内ICON的OnClick点击事件

问题原因&解决方案

  • 原因1:服务器控件事件绑定属性使用错误
    你当前使用的是原生HTML button标签加runat="server"的HTML服务器控件,这类控件绑定服务端点击事件需要使用OnServerClick属性,你写的onclick是用于绑定前端JavaScript点击事件的属性,无法触发后台服务端方法。
    修改HTML代码如下:
<button id="create_project" runat="server" OnServerClick="create_new_project" style="outline: none; border: none;">
    <i class='bx bxs-add'></i>
</button>

如果你习惯使用ASP.NET标准服务器控件,也可以改用支持内嵌HTML内容的LinkButton控件:

<asp:LinkButton ID="create_project" runat="server" OnClick="create_new_project" style="outline: none; border: none;">
    <i class='bx bxs-add'></i>
</asp:LinkButton>
  • 原因2:后台代码存在控件名拼写错误
    你的后台方法里写的控件名是defualt_content,和你实际的控件名default_content拼写不一致,会导致运行时报错,修改后代码如下:
protected void create_new_project(object sender, EventArgs e)
{
    main_content.Visible = true;
    default_content.Visible = false;
}
  • 额外排查点
    如果修改后还是无法触发事件,检查页面是否存在验证控件,若存在可以给按钮添加CausesValidation="false"属性,避免因前端验证不通过拦截事件触发。

内容的提问来源于stack exchange,提问作者user15019772

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 16:24:01