C# 是否可以为将在asp.net服务器中而不是javascript块中运行的基本html按钮元素编写事件处理程序函数?

C# 是否可以为将在asp.net服务器中而不是javascript块中运行的基本html按钮元素编写事件处理程序函数?,c#,asp.net,C#,Asp.net,实际上我不需要它。但我的脑子里却有一点好奇,因为为在服务器中运行而编写的事件处理程序函数没有被调用。我拖拽了一个html按钮元素,并将其放在表单元素中,属性为runat=“server” 现在,如果我双击design视图中的按钮,它会将我重定向到创建事件处理程序函数的javascript块。我删除了它,并在代码隐藏文件中写入了我自己的代码。现在,在服务器上运行页面并单击按钮时,不会调用事件处理程序函数 我想让它运行。有什么办法吗?你的按钮是什么样子的?试试这个: <button runat

实际上我不需要它。但我的脑子里却有一点好奇,因为为在服务器中运行而编写的事件处理程序函数没有被调用。我拖拽了一个html按钮元素,并将其放在表单元素中,属性为runat=“server”

现在,如果我双击design视图中的按钮,它会将我重定向到创建事件处理程序函数的javascript块。我删除了它,并在代码隐藏文件中写入了我自己的代码。现在,在服务器上运行页面并单击按钮时,不会调用事件处理程序函数


我想让它运行。有什么办法吗?

你的按钮是什么样子的?试试这个:

<button runat="server" ID="myButton" onClick="YourFunction">My Button</button>
我的按钮

您混淆了两个不同的事件:编辑器中提供的onclick是客户端click事件,由javascript代码处理。
如果使用标记按钮,则可以将基于c#的服务器端事件处理程序添加到此类按钮中

runat="server" 
,属性,并向其添加服务器端处理程序(假设Button1是按钮的id)


html输入的标记不会公开服务器端事件以通过标记添加处理程序,但您可以在页面中添加我上面粘贴的代码\u load/init events

ASPX:

<button runat="server" id="htmlButton1" name="htmlButt" onserverclick="butt">
        foo</button>
您必须(手动)编写处理程序——IDE不会自动为您连接处理程序(您自己使用服务器上的连接处理程序)

<button runat="server" id="htmlButton1" name="htmlButt" onserverclick="butt">
        foo</button>
protected void butt(object sender, EventArgs e)
{
    Response.Write("butt clicked!");
}