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调用中将其传递回页面