ASP.NET/HTML: HTML button's onClick property inside ASP.NET (.cs)
I just wanna find out if there's a way to put my onClick event inside .cs:
<button type="submit" runat="server" id="btnLogin" class="button" onclick="btnLogin_Click();">
where Login_Click() should be inside .cs:
protected void btnLogin_Click(obje开发者_如何转开发ct sender, EventArgs e)
{
// do something
}
Please do take note that I will not use ASP.NET button here, and that I will not put my Login_Click() event inside .html/.aspx so I can't 'expose' my codes. Any suggestions?
You can do that on any server control and this button is made a server control by defining "runat=server
". The problem is probably in your definition of the event:
<button ... runat="server" ... onServerClick="btnLogin_Click" />
You don't need "();
" there...
Apart from that can you explain why you don't use the <asp:Button>
here because I don't really see a problem with that...
You'll want to use the onServerClick. There's an example of how to do that on MSDN:
<button id="Button1" OnServerClick="Button1_OnClick" runat="server">
Click me!
</button>
protected void Button1_OnClick(object Source, EventArgs e) {
// secret codes go here
}
btnLogin.Click += new EventHandler( btnLogin_Click );
will assign the btnLogin_Click event handler to the button's Click event.
however, I would point out that assigning a handler in the markup of the aspx page does not "expose your codes", as the HTML rendered down to the client doesn't have any of that information in it.
I know it's late but i lost so much time on this problem. I was setting InnerHtml of a div with buttons. You need to add type="submit" to your button if you want it to work.
It's late but for someone out there: Apply UseSubmitBehavior="False"
. Example
<button type="submit" runat="server" UseSubmitBehavior="False" type="button" id="btnLogin" class="button" onclick="btnLogin_Click();">
精彩评论