2011-02-15 15 views

Respuesta

7

Hay una propiedad llamada "OnClientClick" también. Aquí puede especificar una función que valide (supongo), o simplemente ejecute javascript de forma regular.

Si sus datos no son válidos, puede simplemente return false; del método. Eso debería cancelar su devolución de datos

1

se debe utilizar muy bien el camino conocido: confirman retorno ('bla bla bla')

adición de este fragmento con el atributo onclick del botón en el método prerender página o botón, del lado del servidor ...

+0

pero no quiero preguntar usuario para confirmación pero simplemente verifique algunas condiciones en la página usando javascript y si todo está bien proceso con postback – gruber

+0

entonces solo devuelve verdadero o falso sin llamar al método de confirmación :) –

1

http://msdn.microsoft.com/en-us/library/7ytf5t7k.aspx

<%@ Page Language="C#" %> 
<script runat="server"> 
    protected void Button1_Click(Object sender, EventArgs e) 
    { 
     Label1.Text = "Server click handler called."; 
    } 
</script> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
<body> 
    <form id="form1" runat="server"> 
    <asp:Button ID="Button1" Runat="server" 
     OnClick="Button1_Click" 
     OnClientClick="return confirm('Ready to submit.');" 
     Text="Test Client Click" /> 
    <br /> 
    <asp:Label ID="Label1" Runat="server" text="" /> 
    </form> 
</body> 
</html> 

duplicado Posible de: Execute ClientSide before ServerSide in ASP.NET

1

me cambió la definición de la función __doPostBack de lograr esto:

<script type="text/javascript"> 
    var originalDoPostback = __doPostBack; 
    __doPostBack = function (p1, p2) { 
     doSomethingCustomHere(); 
     originalDoPostback(p1, p2); 
    }; 
</script> 
Cuestiones relacionadas