我的MVC应用程序中的aspx页面中有3个用户控件。 我从一个控制器绑定来自DB的数据。
选择"过滤器/状态"我想将数据(刷新)绑定到" List"用户控制没有刷新"过滤器&状态"用户控制。
下面的是我在aspx页面中的用户控件。 请帮我刷新部分页面/用户控件。
我试过只返回" ListView"查看数据。但它正在寻找其他2个观点&抛出异常。
<td>
<%Html.RenderPartial("Filter", ViewData["FilterView"]); %>
</td>
<td valign="top" width="15%">
<%Html.RenderPartial("Status", this.ViewData["StatusView"]); %>
</td>
<td valign="top" width="85%">
<%Html.RenderPartial("List", this.ViewData["ListingView"]); %>
</td>
答案 0 :(得分:1)
做这样的事情
<div id="ListingView"> <%Html.RenderPartial("List", this.ViewData["ListingView"]); %> </div> ... <input type="button" id="refreshListingView" />
javascript来处理它:
$('#refreshListingView').click(function () {
var selectedStatusId = 'get here proper status id';
$.ajax({
url: '/YourController/GetListingView',
type: "GET",
data: { "statusId": selectedStatusId },
success: function (response) {
$('#ListingView').html(response);
}
});
});
YourController:
[HttpGet]
public ActionResult GetListingView(int statusId)
{
ViewData["ListingView"] = your data filtered by statusId or what you want;
return PartialView("List",ViewData["ListingView"]);
}
而不是ViewData [“ListingView”]我会使用专用模型,但它只是一个例子。它应该工作。