【问题标题】:HTML button not running .NET codeHTML 按钮未运行 .NET 代码
【发布时间】:2017-06-30 18:12:35
【问题描述】:

我对@9​​87654321@ 编程有点陌生,我正在尝试让一些.NET 代码在一些HTML 代码后面运行。其他人编写了 html,我的任务是让按钮正常工作。

我尝试的一切都不起作用,按钮当前看起来像这样:

<button id="btnSubmit" runat="server" OnServerClick="btnSubmit_Click">Submit</button>

btnSubmit后面的代码如下所示:

protected void Page_Load(object sender, EventArgs e)
{
    btnSubmit.ServerClick += new EventHandler(btnSubmit_Click);
}

protected void btnSubmit_Click(object sender, EventArgs e)
{
    Response.Write("test");
}

当我去测试它时,当我点击Submit 按钮时,所发生的只是页面刷新,我没有得到预期的“测试”输出。我是不是做错了什么?

【问题讨论】:

  • 测试了你的代码,它可以工作。该方法被调用。而且您不需要在页面加载中绑定点击,因为您已经在按钮上分配了它。
  • @derloopkat 每个带有 runat="server" 的 HTML 元素都是一个服务器控件。并触发回发
  • 在玩了 3 个小时之后,我在整个
    标记中没有 runat="server" 。添加后工作。愚蠢的错误......
  • webform 基础:-)
  • 我知道,但我第一次阅读帖子时没有看到任何 runatserver。

标签: html asp.net .net visual-studio-2013


【解决方案1】:

我以前也遇到过此类问题,只需使用命名函数即可。 你不需要使用

 protected void Page_Load(object sender, EventArgs e)
{
    btnSubmit.ServerClick += new EventHandler(btnSubmit_Click);
} 

当您在 runat=server 中初始化按钮时,服务器会将其读取为按钮,以便在编译时进行处理,因此只需创建一个没有任何输入的函数并正常调用它。例如

<button runat="server" id="btnAdd" onserverclick="Addition_Func">Add</button>

在服务器端:

public void Addition_Func()
{
    try {
//Anycode
} catch (Exception ex) {

    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-27
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    • 1970-01-01
    相关资源
    最近更新 更多