One solution is, don’t use an asp.net button, use an html input or link tag instead. However, you may want to use an asp:XXXButton for consistency with the rest of your page; or it may seem a simple way to make the text on the button localisable (although you can equally achieve that on a plain old html control if you give it an id, a runat=”server” and probably a meta:resourcekey); or you may have other stuff you want to do with it serverside.
To stop an asp.net button causing a postback, do it like this:
<asp:LinkButton id="btnX" OnClientClick="return false;" runat="server"/>
<asp:LinkButton id="btnX" OnClientClick="functionToCall();return false;" runat="server"/>