Cuando presionamos un botón, primero se ejecuta el OnClientClick, que es el que ejecuta la función Javascript que nosotros hayamos asignado. Si el resultado de esta ejecución es true, a continuación se ejecuta el OnClick, que esta en servidor y es el que provoca el postback.
Para evitar esto (y que por lo tanto no queremos ejecutar nada en servidor) basta con devolver siempre un false en el OnClientClick, del siguiente modo:
<asp:Button runat="server" ID="myButton" OnClientClick="myJSfunction();return false;" OnClick="myServerFunction" Text="Press" />
Añadiendo ese return false; provocamos que el OnClick no se ejecute y por lo tanto no provoque un PostBack.
No Responses