繁体   English   中英

Mvc.JQuery.DataTables列过滤器停止工作

[英]Mvc.JQuery.DataTables column filters stopped working

我相信这是自上次NuGet软件包从1.3.42升级到1.3.44

Report.cshtml:

@using Company.Controllers
@using Mvc.JQuery.DataTables
@using Mvc.JQuery.DataTables.Serialization

@{
     ViewBag.Title = "Report";
     Layout = "~/Views/Shared/_Layout.cshtml";
}

@section Styles {
    @Styles.Render("~/CSS/mvcdatatables")
}

@section Scripts {
    @Scripts.Render("~/bundles/mvcdatatables")
}

<div>
    <h1>Report for @ViewBag.ProjectName</h1>
</div>

@{
    var vm = Html.DataTableVm("table-id", (ProjectsController p) => p.GetReportData(null));

    vm.Dom = "Blfrtip";
    vm.LengthMenu = LengthMenuVm.Default();
    vm.PageLength = 25;
    vm.ColVis = false;
    vm.UseColumnFilterPlugin = true;
    vm.TableTools = true;
}

@Html.Partial("DataTable", vm)

当我在列过滤器中输入任何搜索词时,就不再进行过滤。 我在GetReportData中看到的是DataTablesParam不再填写任何sSearchValues

public DataTablesResult<VariableModel> GetReportDataCore(DataTablesParam dataTableParam, /* ... params omitted */)
{
    ...
    reportItems = ...  // Details doesn't matter how I obtain these, it works, the view lists the name value pairs
    var queryable = reportItems.InterceptWith(new SetComparerExpressionVisitor(StringComparison.CurrentCultureIgnoreCase));
    return DataTablesResult.Create(queryable, dataTableParam, (ResponseOptions<VariableModel>)null);
}

1.3.44升级后,我尝试:

@{
    var vm = Html.DataTableVm("table-id", (ProjectsController p) => p.GetReportData(null));

    vm.Dom = "Blfrtip";
    vm.LengthMenu = LengthMenuVm.Default();
    vm.PageLength = 25;
    vm.ColVis = false;
    vm.Filter = true;
    vm.ShowFilterInput = true;
    vm.UseColumnFilterPlugin = true;
    vm.TableTools = true;
    vm.FilterOn("VariableName").Text().FilterOn("Value").Text();  // Even this
}

我应该怎么做才能使其再次工作?

这是软件包中缺少文件的副作用: https : //github.com/mcintyre321/mvc.jquery.datatables/issues/148

已经有一个新的NuGet软件包(v 1.3.45 )解决了这个问题: https : //github.com/mcintyre321/mvc.jquery.datatables/issues/149

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM