| |||
Metodo Si es posible. Pero primero necesitas obtener desde el servidor la llamada al evento, lo puedes hacer de varias formas. Una seria utilizar Page.GetPostBackClientHyperlink, con esta funcion obtienes el codigo en java script que ejecuta el evento del lado del servidor, por ejemplo Page.GetPostBackClientHyperlink(Button1, "") regresa javascript:__doPostBack('Button1','') El cual lo puedes utilizar Otra forma seria mandar llamar a la funcion __doPostBack, pero te tendrias que asegurar de que exista, pues en un aspx no siempre existe, ademas de enviarle como parametro el clientId del control que quieres se ejecute el evento, esto para cuando utilises controles de usuario .ascx si colocas un boton en la pagina y la ves en el navegador al ver el codigo fuente veras que no se escribe la funcion __doPostBack. Para asegurate que asp escriba la funcion __doPostBack usa alguna de las siguientes funciones en el evento load de la pagina para que siempre se escriba la funcion __doPostBack en el html. Page.GetPostBackClientHyperlink(Button1, "") Page.GetPostBackEventReference(Button1, "") Page.GetPostBackClientEvent(Button1, "") En usas un linkbutton siempre se escribira la funcion. Un saludo. |
| |||
Ea, en accion un microsoft certified professional Bueno.. mi respuesta ahi te va: te traer el objeto con javascript
Código:
Saludos var obj = document.getElementById("TuBoton_ClientID"); if (obj){ obj.click(); } |
| |||
Buenas. ¿Hay alguna manera de llamar desde JavaScript a una función (no a un evento) de Visual Basic .NET (una que esté hecha en .aspx.vb)? En VB tengo: Protected Sub prueba() MsgBox("funcion VB") End Sub En Javascript quiero algo así como lo siguiente: document.nombre_formulario.prueba(); Muchas gracias |
| |||
Puedes usar ajax... (esto si te proporciona acceder a un metodo desde el cliente al servidor sin hacer postback) http://atlas.asp.net/Default.aspx?tabid=47 |
| |||
A ver si me podeis echar un cable... Yo lo que quiero es llamar a un metodo que esta en el codebehind, despues de haber ejecutado una funcion en javascript. Tengo este codigo: <script language="javascript"> function Validar() { if (confirm('¿Confirma que desea aceptar?')) return true; else return false; } </script> y este boton: <input language="javascript" name="Button3" id="Button3" type="button" value="Reset" onclick="if (Validar()) __doPostBack('Button3','')" /> Es decir, una vez pinchado el boton, aparece el mensaje de confirmacion y si le doy a aceptar quiero que me ejecute esta funcion que tengo en el codebehind: protected void Reset_Click(object sender, EventArgs e) { ... } ¿Como lo hago? |
| |||
Tienes que poner: En el onload por ejemplo: me.boton3.Attributes.Add("onclick", "javascript:return Validar();") si la función de javascript te devuleve false, no te va a ejecutar el método "Reset". Espero que te sirva. saludos. |
| |||
Cita: Donde lo tengo que poner? Lo siento pero no te he entendido, gracias por contestar :)
Iniciado por aupaneu Tienes que poner: En el onload por ejemplo: me.boton3.Attributes.Add("onclick", "javascript:return Validar();") si la función de javascript te devuleve false, no te va a ejecutar el método "Reset". Espero que te sirva. saludos. |
| |||
Cita: O no te entiendo yo o no me has ententido tu. ;)
Iniciado por aupaneu Tienes que poner: En el onload por ejemplo: me.boton3.Attributes.Add("onclick", "javascript:return Validar();") si la función de javascript te devuleve false, no te va a ejecutar el método "Reset". Espero que te sirva. saludos. |
| |||
Perdona, rectifico. De todas formas te advierto que utilizo el aspbutton, con el button de html no me sale.Ahi va: VB: Partial Class _Default Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Me.Button1.Attributes.Add("onclick", "javascript:return validar();") End Sub Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click MsgBox("La función JS devuelto TRUE") End Sub End Class ASP: <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Página sin título</title> <script> function validar() { if (confirm('¿Confirma que desea aceptar?')) return true; else return false; } </script> </head> <body> <form id="form1" runat="server"> <div> <asp:Button ID="Button1" runat="server" Text="Button" /> </div> </form> </body> </html> Así funciona (lo he probado), pero no se si a ti te servirá... Saludos. Última edición por aupaneu; 24/05/2006 a las 01:30 |
| |||
aupaneu me has dado una idea ;D y lo he solucionado de esta manera: <script> function Validar() { if (confirm('¿Confirma que desea restaurar todos los valores predeterminados?')) return true; else return false; } </script> He creado un boton (que se ejecuta en el cliente) y un link (que se ejecuta en el servidor) d este modo: <input language="javascript" onclick="if(Validar()) __doPostBack('Reset','')" value ="Reset"/> <asp:LinkButton ID="Reset" runat="server" OnClick="Reset_Click"></asp:LinkButton> Este link, ejecuta la funcion Reset_Click, en caso que le demos a aceptar en el confirm de javascript. Como no hay ningun enlace puesto, quedara transparente al diseño. Gracias aupaneu :) |
| |||
Re: llamar a evento desde una funcion javascript Donde colocas esto de la web exactamente?: <input language="javascript" onclick="if(Validar()) __doPostBack('Reset','')" value ="Reset"/> Que tiene la función Reset_click? Si puedes pon todo el código final... Última edición por chascos69; 09/04/2008 a las 00:03 Razón: que tiene la función Reset_click |
| |||
Respuesta: llamar a evento desde una funcion javascript Sin duda la mejor respuestas de todas x_x, me sirvio mucho mucho xD gracias |