funcionalidade do botão Voltar a página com formulário e procurar resultado + Ajax (ASP.NET)
-
22-07-2019 - |
Pergunta
Eu tenho um formulário asp.net usado para pesquisa. O resultado da pesquisa está mostrando na mesma página usando Ajax. Se eu navegar para outra página e voltar, fico com a forma povoada, mas o resultado da pesquisa está vazio. Qual é a melhor maneira de voltar para a página e ter o resultado povoada.
Ou como forçar a página para enviar de volta para repovoar a página com os resultados quando o botão de voltar é clicado?
Solução
Você pode fazer isso usando o EnableHistory propriedade no ScriptManager . Depois de definir propriedade EnableHistory do ScriptManager como True, você pode usar o AddHistoryPoint método para pontos de histórico definido em sua página.
<asp:ScriptManager runat="server" ID="MyScriptManager" EnableHistory="True">
</asp:ScriptManager>
Dino Esposito tem um bom par de artigos aqui (client-side) e < a href = "http://dotnetslackers.com/articles/aspnet/AFirstLookAtASPNETExtensions35HistoryPoints.aspx" rel = "noreferrer"> aqui (server-side) sobre como utilizar a funcionalidade história scriptmanager.
Outras dicas
Há uma série de quadros que attempmt para lidar com o botão voltar e ajax.
Aqui é Microsoft 's
Aqui é um chamado história realmente simples
Aqui estão um pouco mais se você estiver usando jQuery:
http://plugins.jquery.com/project/history
http://stilbuero.de/jquery/history/
http://www.overset.com/2008/ 18/06 / jquery-história-plugin /
https://stackoverflow.com/questions/116446/what -é-the-best-back-button-jquery-plugin
A fim de manter os dados selecionados anteriores na página de usuário deve adicionar o código abaixo:
Response.Cache.SetCacheability(HttpCacheability.NoCache)
em caso Page_load
da página.
Assim, quando o usuário clica no botão do navegador de volta, o depurador virá para o evento de carregamento da página da página, eo usuário pode armazenar os valores na variável de sessão (Critérios de pesquisa anteriores) e carga religar o Gridview
ou qualquer servidor controles.