使用Razor MVC进行kendo-ui分层网格中的子网格过滤

时间:2016-10-18 09:03:10

标签: kendo-asp.net-mvc

我正在尝试在MVC中的kendo-ui分层网格中实现对子网格的过滤,但是它给出了错误。

HTML代码示例:

.Columns(col =>
            {
                col.Bound(o => o.Id).Hidden(true);               
                col.Bound(o => o.Column1).Width(100).ClientTemplate("\\#= BuildLink(data,'1') \\#");
                col.Bound(o => o.Column2).Width(100).ClientTemplate("\\#= BuildLink(data,'2') \\#");
                col.Bound(o => o.Column3).Width(100).ClientTemplate("\\#= BuildLink(data,'3') \\#");
                col.Bound(o => o.YTDSailedCalls).Width(100).ClientTemplate("\\#= BuildLink(data,'4') \\#");               
            })
                      .Sortable().Scrollable().Filterable()
                        .Pageable(pageable => pageable.Refresh(true)
                        .PageSizes(new int[5] { 20, 40, 80, 100, 200 })
                        .ButtonCount(5))

但它在浏览器控制台中给出了错误并且没有显示任何内容。

如果有人遇到此问题或有解决方法,请尽快回复。

1 个答案:

答案 0 :(得分:0)

试试这个 -

@(Html.Kendo().Grid<Kendo.Mvc.Examples.Models.OrderViewModel>()
.Name("grid")
.Columns(columns =>
{
    columns.Bound(p => p.OrderID).Filterable(ftb => ftb.Cell(cell => cell.ShowOperators(false))).Width(225);
    columns.Bound(p => p.ShipName).Width(500).Filterable(ftb => ftb.Cell(cell => cell.Operator("contains")));
    columns.Bound(p => p.Freight).Width(255).Filterable(ftb => ftb.Cell(cell => cell.Operator("gte")));
    columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
})
.Pageable()
.Sortable()
.Scrollable()
.Filterable(ftb => ftb.Mode(GridFilterMode.Row))
.HtmlAttributes(new { style = "height:550px;" })
.DataSource(dataSource => dataSource
    .Ajax()
    .PageSize(20)
    .ServerOperation(true)
    .Read(read => read.Action("Orders_Read", "Grid"))
 )

如需更多帮助,请参阅此链接 -

Kendo Grid filter