Pergunta

Preciso implementar um botão de volta para o meu site ASP.NET.Eu sou capaz de usar o método JavaScript para obter meu requisito. Mas, usando esse método, às vezes preciso clicar no botão Voltar vários tempos para voltar à página anterior . Pode ser porque estamos usando as guias do jQuery em nosso site. Para focar em uma guia específica, exceto a 1ª guia na página Carregar que estou usando página.clientscript.registerStartupScript (....). Então, não consigo levar O usuário de volta à página anterior com apenas um clique.

Eu também tentei com os métodos ASP.NET-C# mencionados no link a seguir.http://www.dotnetcurry.com/showarticle.aspx?id=89Eu sou capaz de voltar para a página anterior, mas seu estado está sendo perdido. Alguém pode me ajudar a alcançar meus requisitos?

Detalhes:
Eu tenho Page1.aspx, página2.aspx (que contém guias jQuery view/edit).

No Page1.aspx, existem 2 botões (visualize, editar). Se eu clicar no botão Exibir, leve -me para a página2.aspx View (guia 1ª) e se eu clicar no botão Editar, ele precisará me levar à página2. ASPX com a guia Editar Carregada. Aboth View/Edit WABS contém o botão Voltar.

Também na guia Exibir, eu posso navegar até a guia Editar, clicando em outro botão de edição presente.

Obrigado.

Foi útil?

Solução

Os métodos que você abordou em sua pergunta são essencialmente o que está disponível para você.
Você também pode
1. Forneça um link que usa JavaScript para fazer o cliente voltar uma página.
2. Forneça um link que poste de volta ao servidor que o redireciona de volta a uma página.

Não sei por que o jQuery em seu WebForm, conforme descrito em sua pergunta, está fazendo com que você clique mais que uma vez para voltar. Se você souber que sempre levará 2 cliques para voltar, você pode tentar este método:

javascript: window.history.go(-2)

Ao usar o método de postback/redirecionamento, sempre usará um método HTTP GET para recuperar a página que você está retornando também. Se você deseja manter o estado, terá que fazer isso manualmente, ou seja, salve os valores ao sair da página em algum lugar, como sessão ou um banco de dados temporário e, ao retornar à página, durante a página Carregar, verifique se o usuário os possui valores salvados e pré-povoados.

Outras dicas

Eu fiz algo semelhante (com redirecionamentos automáticos) e tive que acompanhar o número de páginas para voltar ao meu ViewState (ou sessão se você estiver pulando de página para página):

Código por trás

public void Page_Load()
{
    Session["pagesToGoBack"] = ((int)Session["pagesToGoBack"])++;
}

Mark-up:

<input type="button" value="Back" onclick='javascript:history.go(<%= Session["pagesToGoBack"] %>);' />

Tenha cuidado para redefinir a variável da sessão quando necessário

Me fez sentir um pouco sujo, mas funcionou :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top