2012-03-11 8 views

Respuesta

16

puedo encontrar el camino, en el asp.net forums y fue un poco de código en el código subyacente.

Simplemente agregue esto al controlador de eventos Page_Load, cambiando la cadena javaScript a lo que desea que suceda.

string scriptKey = "OnSubmitScript"; 
string javaScript = "alert('RegisterOnSubmitStatement fired');"; 
this.ClientScript.RegisterOnSubmitStatement(this.GetType(), scriptKey, javaScript); 
+1

+1 Parece que no funciona de otra manera en asp.net. eyval – nima

+1

+1 Sé cuántos años tiene esto, ¡pero muchas gracias! Me ayudó mucho. – user3439065

+0

Gracias a @ MartínCanaval por editar esta respuesta. – Emech

5

Si usted quiere hacer algo del lado del cliente antes de la devolución de datos de asp, intente utilizar el atributo OnClientClick del asp:button, por ejemplo:

<asp:Button OnClick="submit" OnClientClick="myPrePostbackFunction()" Text="Submit" runat="server" ... /> 
+0

lo sé, pero tengo un montón de elemento asp en la página, lo que quiero hacer este código antes de cualquier devolución de datos, no para un botón o elemento de – Emech

2

intento:

$('form').submit(function() { 
    return confirm('you sure?'); 
}); 

El f orm no se enviará a menos que devuelva true y antes de eso puede hacer todo lo que quiera. No tiene por qué ser una llamada confirm() por supuesto.

+0

especial no funciona Martin, nada le pidió ... Sin embargo, gracias. – Emech

+0

Bastante extraño, ¿qué navegador estás usando para probar? –

+0

generalmente uso IE, es extraño para mí también ... – Emech

0

prueba esto?

<form name="someform"> 
    <input type="submit" value="" /> 
</form> 
<script type="text/javascript"> 
document.someform.onsubmit = function (e) { 
    e = e|| window.event; 
    if (!confirm ("sure?")){ 
     e.returnValue ? (e.returnValue = false): e.preventDefault(); 
    } 
} 
// then jquery version 
$("form").bind("submit", function (e) { 
    if (!confirm ("sure?")){ 
     e.preventDefault(); 
    } 
}) 
</script> 
Cuestiones relacionadas