Тег <partial>
- это конструкция Razor, которая обрабатывается на стороне сервера. Это не что-то, что JS или просто HTML поймет.
Чтобы логика c работала так, как вам требуется, вам нужно изменить действие, чтобы оно возвращало HTML из частичного просмотр вместо JSON.
Шаблон будет выглядеть примерно так, хотя, очевидно, я упрощаю его из-за отсутствия подробной детализации c на ваших моделях или ожидаемого HTML вывода.
[HttpPost]
public IActionResult Test2(int id)
{
List<Location> p = _context.Locations.Where(x => x.CategoryId.Equals(id)).ToList();
return View("PartialViewName", p);
}
@model List<Location>
@foreach(var item in Model)
{
<div class="sidebar_container">
<div class="sidebar_list">@item.Foobar</div>
</div>
}
function yoo(id) {
$.ajax({
type: 'POST',
url: '/Home/Test2',
data: { 'id': id },
success: function(result) {
$('#container').html(result);
}
});
}