ASP.net имитировать кнопку возврата браузера

#asp.net

#asp.net

Вопрос:

Я работаю над своим ASP.NET веб-проект с использованием VS2010, C #, я вставляю гиперссылку на свою страницу с пометкой «НАЗАД», и я хочу, чтобы она действовала как кнопка возврата браузера, как я должен это реализовать? какой самый простой способ? как я должен установить его свойство NavigateUrl? Спасибо

Ответ №1:

 <asp:button id="backButton" runat="server" text="Back" 
OnClientClick="JavaScript:window.history.back(1);return false;"></asp:button>
  

За исключением того, что это кнопка, конечно:-( (прочитайте вопрос, Стив)

Попробуйте

 navigateurl="javascript:history.go(-1);"
  

Комментарии:

1. спасибо, Стив, но как я могу включить это в свою гиперссылку? как я должен выполнить эту функцию javascript, используя гиперссылку?

2. Либо используйте правку, которую я внес в атрибут NavigateUrl, либо используйте это: <asp:Hyperlink Runat="server" NavigateUrl="#" onclick="javascript:history.go(1);return false;">BACK<asp:Hyperlink>

3. спасибо, Стив, ты отлично сэкономил мне время! короткий, но полностью полезный ответ, удачи

4. @SteveMorgan Я пытался это сделать, но у меня возникли проблемы с правильной работой, у меня есть серия экранов, чтобы вернуться не только к 1 экрану. Предположим, я иду так A-> B-> C-> D. Теперь я хочу вернуться к работе в обратном порядке, например, D-> C-> B-> A, но это работает так: D-> C-> B-> C-> B, а затем он продолжает вращаться между B и C. Не могли бы вы помочь, пожалуйста : ( ..

Ответ №2:

Вам не нужно ASP.NET , просто используйте этот код HTML / JScript:

<a href="javascript:history.go(-1)">Back</a>

Ответ №3:

@Steve Не уверен, как прокомментировать существующий ответ, но… Я подумал, что я мог бы просто для пинки сказать, что вы всегда можете сделать «кнопку» «linkbutton»:

Ответ №4:

Если вы используете jQuery, вы можете просто добавить data-rel="back" в свой якорный тег

 <a data-rel="back" data-role="button" data-icon="back">Back</a>
  

Ответ №5:

Попробуйте это..

 private void btnBack_Click(object sender, System.EventArgs e)
{
    string prevPage = Request.UrlReferrer.ToString();
    Response.Redirect(prevPage);
}
  

или

 <asp:button id="btnBack" runat="server" text="Back" xmlns:asp="#unknown">
 OnClientClick="JavaScript: window.history.back(1); return false;"></asp:button>
  

Комментарии:

1. Вы потеряете состояние страницы, если сделаете это со стороны сервера (используя Response . Перенаправление). Однако с помощью Javascript состояние сохраняется

Ответ №6:

что-то вроде этого должно сделать

 <button>
    @Html.ActionLink("Back", "Index", "Students (your controller name here)", new { id = @Model.Student.Id })</button>
ANOTHER WAY
<a asp-action="Index" asp-controller="Students" asp-route-studentId="@Model.StduentId" class="btn btn-sm btn-success">Back to List</a>