C# 在Javascript中重新刷新我的部分
因此,我有一个局部视图,其中包含:C# 在Javascript中重新刷新我的部分,c#,javascript,ajax,asp.net-mvc,partial-views,C#,Javascript,Ajax,Asp.net Mvc,Partial Views,因此,我有一个局部视图,其中包含: @Html.Partial("_partial", Model, new ViewDataDictionary { { "DisplayCheckbox", true } }) 在这个\u partial页面中有一个循环,如下所示 @foreach (var w in Model.WeekEndingDateRange) { <th>@w.WeekEndingDate.FormatDate()</th> } function
@Html.Partial("_partial", Model, new ViewDataDictionary { { "DisplayCheckbox", true } })
在这个\u partial
页面中有一个循环,如下所示
@foreach (var w in Model.WeekEndingDateRange)
{
<th>@w.WeekEndingDate.FormatDate()</th>
}
function filterResults(){
//do some stuff like creating "model"
$.ajax({
type: "POST",
url: "@Url.Action("FilterTable", "Report")",
data: model
})
.done(function (data) {
//continue on to populate table data
因此,当ajax调用完成时,我可以进行如下调用:
data.WeekEndingDateRange
抓取我希望部分循环通过的列表。这将为表创建(数据的大小。WeekEndingDateRange列表)数量的标题
因此,我需要一种方法来部分地抓取而不是模型.WeekEndingDateRange,而是抓取数据.WeekEndingDateRange。这样,在筛选表之前,分部将不创建标题(因为表中没有填充任何信息),并且一旦用户筛选结果,表将为数据中的每个元素创建新标题。WeekEndingDateRange
我已经试过做:
@Html.Partial("_ProjectAllocationReport", data, new ViewDataDictionary { { "DisplayCheckbox", true } })')
在我的ajax调用之后,但这不会起作用,因为数据超出范围
任何帮助都将不胜感激 我建议你利用你的观点。实际上,确实希望片段抓取Model.WeekEndingDateRange。问题是您没有更新模型的WeekEndingDateRange 因此,您的ajax调用类似于
function filterResults()
{
$.ajax({
type: "POST",
url: "",
data: model,
datatype: "html"
}).done(function(html)
{
$("HeaderElementHere").html(html);
});
}
在控制器中,执行以下操作:
Model.WeekEndingDateRange = data.WeekEndingDateRange
@Html.Partial("_partial", Model, new ViewDataDictionary { { "DisplayCheckbox", true } })
您真正想要做的就是将视图用于生成HTML的循环的某个结束日期传递给它,然后在ajax调用中将其传递回页面