我有两个局部视图,HeadphonesFilters
和HeadphonesList
,它们都包含在Index
视图中,如下所示:
<div class="container">
<div class="row">
<h3 class="alert alert-primary p-2">Headphones</h3>
<div class="col-4">
@Html.Partial("HeadphonesFilters", new { minPrice=0,maxPrice=0})
</div>
<div class="col-8" id="headphones-list">
@Html.Partial("HeadphonesList")
</div>
</div>
</div>
HeadphonesList
局部视图接受Headphone
类型对象的列表并显示它们。HeadphonesFilters
局部视图应将过滤的耳机列表返回到HeadphonesList
局部视图。
所有三个视图都访问相同的HeadphonesController
。HeadphonesFilter
局部视图使用Filter
方法,如下所示:
public PartialViewResult Filter(int minPrice, int maxPrice)
{
var list = service.GetHeadphones()
.Where(x => x.SKU.SKUPrice >= minPrice &&
x.SKU.SKUPrice <= maxPrice)
.ToList();
return PartialView("HeadphonesList", list);
}
这个filter方法在一个单独的页面中返回过滤后的耳机,而我希望这个列表转到HeadphonesList
部分视图,并且该视图应该用新列表更新。
有没有办法做到这一点?
1条答案
按热度按时间laximzn51#
我认为您应该使用 AJAX 从控制器获取数据以进行查看,而无需刷新整个页面