Pregunta sobre controls, onclick, c#, asp.net – Agregar evento OnClick al control ASP.NET

2

me gustaría crearOnClick evento para mipanel. Hasta ahora, la mayoría de los resultados de Google se parecen más o menos así:agregando el evento onclick a la etiqueta aspnet. ¿Hay alguna forma de llamar a la función codebehind desde javascript o los atributos del panel? Porque me gustaría redirigir al usuario a una nueva página y antes de eso, guardar algo de información en ViewSTate o Sessionstate. ¿Alguna sugerencia?

A menos que necesite acceso a Viewstate, no estaría de acuerdo con esto, requeriría una solicitud adicional al servidor, que es muy costoso. La sesión estaría disponible en el método que he descrito a continuación. Liath
Si necesita acceder a las variables del servidor como ViewState o Session de todos modos, debería devolver y luegoResponse.Redirect a la otra pagina Tim Schmelter

Tu respuesta

3   la respuesta
0

puede hacer que el botón sea normal y luego devuelto a una página diferente: aquí es donde debe declararse su método OnClick.

Recomiendo encarecidamente que no vuelva a publicar en la misma página y luego haga un Response.Redirect (), considere el tráfico. El navegador solicita la página, luego envía un HttpRedirect y luego navega a la nueva página. Con el método que he descrito anteriormente, esto no es obligatorio y el navegador debe realizar una solicitud menos (es decir, el mensaje no tiene que enviarse o la página debe reconstruirse en el servidor) y es un beneficio significativo para el rendimiento.

2

En su método de script java elevar una__dopostback llamar a unServer side method.

<script type="text/javascript">
     function YourFunction()
     {
         __doPostBack('btnTemp', '')
     }
</script>

Dóndebtntemp es un servidorbotón, entonces escriba un evento onClick de este botón en el lado del servidor, donde puede hacer el procesamiento y luego redirigir a otra página.

Usted puede tener una buena comprensión de dopostback enEntendimiento DoPostBack

nos dejacontinuar esta discusión en el chat Imran Balouch
Es extraño, pero si pego mi código en una página nueva, incluso la devolución de datos ya no funciona allí. Oak
¿Podrías pegar todo tu código? Tal vez me estoy perdiendo algo. Gracias. Oak
es muy extraño que funcione conmigo pero no contigo, ¿puedes intentarlo en una aplicación aparte? para que podamos tener la idea de que es algo que nos falta o algo en la aplicación está perturbando la funcionalidad. No he usado una página maestra o Ajax al probar tu código. Imran Balouch
2

Mi página aspx es como:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <script type="text/javascript">
        function CallMe() { __doPostBack('btnTemp', '') }
    </script>
</head>
<body>
    <form id="form1" runat="server">
         <asp:Button ID="btnTemp" runat="server" Text="Test" onclick="btnTemp_Click" />
         <div> <asp:Label ID="Label1" runat="server" Text="Label1"></asp:Label>
         <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label></div>
    </form>
</body>

Y mi código del lado del servidor es como:

protected void Page_Load(object sender, EventArgs e)
    {
        Label1.Attributes.Add("onClick", "CallMe();");
    }
protected void btnTemp_Click(object sender, EventArgs e)
    {

    }

Ese es el código que he escrito, no he incluido la declaración de uso, la directiva de la página, etc. en el código anterior.

Preguntas relacionadas