【发布时间】:2015-03-11 00:11:42
【问题描述】:
我有一个使用通常的 MVC Razor 语法创建的剑道网格。
例如,
@(Html.Kendo().Grid<exampleViewModel>()
.Name("ExampleGridName")
.DataSource(ds => ds
.Ajax()
.Read(read => read.Action("ExampleMethod", "ExampleClass"))
.Columns(c =>
{
c.Bound(m => m.Id);
c.Bound(m => m.FirstName);
c.Bound(m => m.LastName);
});
.Filterable())
我的问题:有没有办法在使用 jquery 加载网格后关闭对“姓氏”等列的过滤?
我成功地遍历了列并确定了我需要关闭过滤的列。我尝试将 filterable 属性设置为 false,但它不起作用。也许是因为它看起来像一个对象类型。
我在尝试重用网格时遇到了这个问题,但在加载页面期间必须应用不同的过滤器。过滤器工作,但是当过滤器被清除时,网格被完全重置。当我在运行时关闭过滤器时,重置会重置,但会在加载期间保持过滤器的应用。
【问题讨论】:
-
如果您不想在绑定列上进行过滤,您可以添加 c.Bound(m => m.FirstName).Filterable(false) ,这将只关闭该列的过滤,但是为其他所有内容保留过滤。
-
@DavidShorthose 我也在其他页面上使用网格,他们更喜欢它在其他页面的列上具有过滤器。
-
@DavidShorthose 要更详细。网格位于部分页面中,我有一个度量表,其中包含代表这些剑道网格中的项目的计数。选择度量时,从完整数据源中读取Kendo Grid,并使用jQuery进行相应的过滤。为了锁定代表指标的过滤器,我想将其关闭。另一种方法是使用从数据库中检索的不同数据源(新方法,参数)创建新的剑道网格,但这可能导致剑道网格和数据源的大量组合。
-
查看我根据 Telerik 自己的过滤器网格演示创建的这个道场,让我知道这是否适合您dojo.telerik.com/ogAYO
-
为了清楚起见,它会从“城市”列中删除过滤器链接。这是在初始化网格时添加的。
标签: jquery kendo-grid kendo-asp.net-mvc