Когда вы создаете Поиск для своего веб-сайта, вы хотите, чтобы взаимодействие с пользователем было таким же хорошим, как и в любое время, и когда вы просматриваете сетку, вы хотите иметь возможность нажать кнопку «Назад», чтобы вернуться на предыдущую просмотренную страницу.
В asp.net с asp.net ajax это возможно при использовании ScriptManager
+ Ajax Control Toolkit , где есть History Manager
.
Теперь, когда вы используете ASP.NET MVC, у вас нет возможности использовать ScriptManager
, потому что он должен быть вложен в управляемую сервером форму.
Этот пример кода используется для Basic поиска
<% using(Ajax.BeginForm("TestSearch",
new AjaxOptions { UpdateTargetId = "details" })) { %>
<%= Html.TextBox("search") %>
<input type="submit" value="search" />
<% } %>
Когда вы нажимаете кнопку «Отправить» на стандартной странице, вы будете размещены на другой странице, однако в этом случае вы этого не сделаете. Поэтому история не сохраняется, поскольку вся веб-страница не была перезагружена.
Это только первая проблема.
Задача № 2
Поскольку история не сохраняется, как доказано выше, история поиска текстового поля не обновляется. Запись истории текстового поля добавляется только тогда, когда страница полностью постбекает. Как решить эту проблему с помощью asp.net mvc + ajax?