Onclick event of the button element is Clientevent, IE, will look for a Javascript function
What you need is to invoke the server method, fortunately this can be done easily using the Onserverclick attribute (without forgetting the runat=Server)
<input type="button" ID="Button1" runat="server" value="Cliqur Aqui" onServerClick="Button1_Click" />
This will fire on the event server protected void Button1_click(Object Sender, Eventargs and)
You may notice that the button above will be rendered as
<input onclick="__doPostBack('ctl00$MainContent$Button1','')" name="ctl00$MainContent$Button1" type="button" id="MainContent_Button1" value="Cliqur Aqui" />
Note that there is no onclick ai.
Just one more Gift: You don’t need an event for every button! Use the same event for all buttons and change the ID of each one.
<input type="button" ID="Botao_1" runat="server" value="Cliqur Aqui" onServerClick="Button1_Click" />
<input type="button" ID="Botao_2" runat="server" value="Cliqur Aqui" onServerClick="Button1_Click" />
On Server:
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write((sender as HtmlInputButton).ID);
}
This will print "Boot 1" or "Boot 2" depending on which one was clicked.