Ответ 1
вы можете использовать это:
<a href='javascript:history.go(-1)'>Go Back to Previous Page</a>
У меня есть страница в asp.net (http://localhost/error/pagenotfound).
На странице есть ссылка на ссылку, по которой нужно вернуться на предыдущую страницу, откуда я пришел.
<a href="#">Go Back to Previous Page.</a>
Как я могу вернуться на предыдущую страницу, взяв из истории
вы можете использовать это:
<a href='javascript:history.go(-1)'>Go Back to Previous Page</a>
Если вы используете asp.net, помните, что
javascript:history.go(-1)
и
window.history.back()
Оба отправят вас на обратную страницу.
Но предыдущая страница не будет точно предыдущей.
Предположим, вы находитесь на странице Default.aspx
и есть asp:button
Теперь, когда вы нажимаете на кнопку, и вы снова на Default.aspx
В этой ситуации ваша предыдущая страница по-прежнему остается вами Default.aspx
Возьмите еще один пример
У вас есть две страницы Default1.aspx
и Default2.aspx
Условие 1: - нажата кнопка Default1.aspx
, которая перенаправляет вас на Default2.aspx
ok ваша предыдущая страница Default1.aspx
Условие 2: - нажата кнопка Default1.aspx
и опубликуется на той же странице Default1.aspx
Теперь ваша предыдущая страница по-прежнему Default1.aspx
Edit
protected void Page_Load(object sender, EventArgs e)
{
if( !IsPostBack )
{
ViewState["RefUrl"] = Request.UrlReferrer.ToString();
}
}
и используйте это в обратной кнопке следующим образом
protected void Button3_Click(object sender, EventArgs e)
{
object refUrl = ViewState["RefUrl"];
if (refUrl != null)
Response.Redirect((string)refUrl);
}
используйте этот код
<html>
<head>
<script>
function goBack()
{
window.history.back()
}
</script>
</head>
<body>
<a href="#" onclick="goBack()">Back</a>
</body>
</html>
Для перехода на предыдущую страницу
Первый метод
<a href="javascript: history.go(-1)">Go Back</a>
Второй метод
<a href="##" onClick="history.go(-1); return false;">Go back</a>
если мы хотим более чем на один шаг назад, увеличьте
For going 2 steps back history.go(-2)
For going 3 steps back history.go(-3)
For going 4 steps back history.go(-4)
and so on........
Я нашел этот пример
<input type="button" value=" <-- BACK " onclick="history.go(-1);return false;">
Просто поместите эту страницу, она работает.
Вы должны добавить атрибут, который находится примерно так:
protected void Page_Load(object sender, EventArgs e)
{
yourButton.Attributes.Add("onClick", "javascript:history.back(); return false;");
}
protected void yourButtonClick(object sender, EventArgs e)
{
Response.Write("Stackoverflow <br/>");
}
Речь идет об использовании кнопки для перехода на предыдущую страницу, вы можете изменить ее в соответствии с вашими изменениями.
Я смотрел на все выходные и не нашел ответа, который я искал. Проблема в том, что после postback history.go(-1); не вернется туда, куда вы хотите отправиться, то есть на страницу, где вы попали (с внесенными изменениями).
Использование Request.UrlReferrer.ToString(); перезагрузит страницу, на которую вы вернетесь, и вы можете быть похожими на меня и не хотите потерять какие-либо изменения, внесенные на страницу. Выше Rizwan Gill в 2013 году ответили, что вы хотите вернуться на 2, 3 или 4 страницы, но он не дал хороший способ сделать это.
Лучший способ сделать это - фактически использовать всплывающий модальный для вашей страницы, когда он вызывается, если вы пишете вызывающую страницу, но если вы хотите сделать это таким образом и у вас есть кнопка "Назад", вы будете иметь помнить каждую обратную запись и считать их.
Итак, начните с своего скрытого поля (в вашем .aspx файле):
<asp:hiddenfield id="fldPostbackCount"
value="0"
runat="server"/>
Затем добавьте значение с каждой обратной записью (в файл .aspx.vb):
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
fldPostbackCount.Value = 1
Else
fldPostbackCount.Value = Int32.Parse(fldPostbackCount.Value) + 1
End If
End Sub ' Page_Load()
(я уверен, что люди .cs могут обрабатывать преобразование от C до этого)
Теперь вернемся к вашему .aspx файлу, у вас должна быть кнопка истории:
<a href="javascript:history.go(-<%: fldPostbackCount.Value %>)" title="Back to Previous Page">Back to Previous Page</a>