Funcionalidad del botón Atrás a la página web con formulario y resultado de búsqueda + Ajax (ASP.NET)
-
22-07-2019 - |
Pregunta
Tengo un formulario asp.net utilizado para la búsqueda. El resultado de la búsqueda se muestra en la misma página usando Ajax. Si navego a otra página y regreso, obtengo el formulario poblado pero el resultado de la búsqueda está vacío. ¿Cuál es la mejor manera de volver a la página y completar el resultado?
¿O cómo obligar a la página a volver a publicar para repoblar la página con los resultados cuando se hace clic en el botón Atrás?
Solución
Puede hacerlo utilizando el EnableHistory en la ScriptManager . Una vez que haya establecido la propiedad EnableHistory de ScriptManager en True, puede usar Método AddHistoryPoint para establecer puntos de historial en su página.
<asp:ScriptManager runat="server" ID="MyScriptManager" EnableHistory="True">
</asp:ScriptManager>
Dino Esposito tiene un buen par de artículos aquí (lado del cliente) y < a href = "http://dotnetslackers.com/articles/aspnet/AFirstLookAtASPNETExtensions35HistoryPoints.aspx" rel = "noreferrer"> aquí (del lado del servidor) sobre el uso de la funcionalidad del historial del administrador de scripts.
Otros consejos
Hay varios marcos que intentan manejar el botón de retroceso y ajax.
Aquí está Microsoft
Aquí hay uno llamado historia realmente simple
Para conservar los datos seleccionados previamente en la página, el usuario debe agregar el siguiente código:
Response.Cache.SetCacheability(HttpCacheability.NoCache)
en el evento Page_load
de la página.
Entonces, cuando el usuario hace clic en el botón Atrás del navegador, el depurador irá al evento de carga de la página de la página, y el usuario puede almacenar los valores en Variable de sesión (Criterios de búsqueda previa) y volver a cargar la vista de cuadrícula
o cualquier control del servidor.