#c# #asp.net-core
#c# #asp.net-ядро
Вопрос:
Я хочу перенаправить на определенный div веб-страницы после обработки некоторых данных в контроллере. Есть ли у них какой-либо способ добавить ‘#’ в конец URL-адреса? Или я должен обработать это с помощью javascript?
Пример:
[HttpPost]
public async Task<IActionResult> Edit(ViewModel model){
....
return RedirectToAction("Info", new { id = model.Id, "#" = "item_55" });
}
=> Следует перенаправить на /Info/id=4#item_55
Комментарии:
1. вместо этого, отобразите страницу нормально, т.е.
RedirectToAction
и при попадании на эту страницу вdocument.ready
функции используйтеJQuery
для прокрутки до соответствующего раздела, т.е#
2. @Aarif зачем использовать JavaScript и jQuery для чего-то, что изначально поддерживается браузерами?
Ответ №1:
RedirectToAction
имеет перегрузку, которая позволяет указать фрагмент. Вот пример:
return RedirectToAction("Info", "Controller", new { id = model.Id }, "item_55");
Обратите внимание, что вам также необходимо указать контроллер в качестве одного из аргументов, как я сделал выше.