我正在使用kendo网格,它们适用于CRUD操作。现在,我想通过在网格规范中添加.Filterable()
选项来添加过滤。这是一些代码:
<div id="datagrid">
@(Html.Kendo().Grid<SustIMS.Models.ConcessionModel>()
.Name("datagrid_Concessions")
.Columns(columns =>
{
columns.Bound(c => c.Code).Title("Code");
columns.Bound(c => c.Description).Title("Description");
columns.Bound(c => c.TrafficOpeningDate).Title("Traffic Opening Date");
columns.Bound(c => c.CreationDate).Title("Creation Date");
})
.HtmlAttributes(new { style = "height: 534px;" })
.Filterable() // here's the filterable option
.Selectable()
.Events(e => e.Change("onChange"))
.Pageable(pageable => pageable
.Refresh(true))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(15)
.Read(read => read.Action("GetConcessions", "MasterData"))
)
)
</div>
网格渲染完美,现在网格列标题上显示了一些过滤器图标:
但是当我单击一个时,弹出窗口会打开半秒钟并抛出错误。我正在使用Visual Studio 2010,调试器显示弹出窗口
javascript runtime error: object doesn't support property or method 'addBack'
。
此外,它会打开文件kendo.all.min.js
,并在方法addBack
所在的代码行上突出显示。
注意:我在Chrome和Firefox上测试过,它运行正常。该问题仅在使用Internet Explorer(版本11)时存在。
任何帮助?
答案 0 :(得分:1)
确保您的网页中有Jquery-1.8.1.min.js
或更高版本的jquery
。因为addBack
中添加了1.8
。
试试这个,
@(Html.Kendo().Grid<SustIMS.Models.ConcessionModel>()
.Name("datagrid_Concessions")
.Columns(columns =>
{
columns.Bound(c => c.Code).Title("Code");
columns.Bound(c => c.Description).Title("Description");
columns.Bound(c => c.TrafficOpeningDate).Title("Traffic Opening Date");
columns.Bound(c => c.CreationDate).Title("Creation Date");
})
.HtmlAttributes(new { style = "height: 534px;" })
.Filterable() // here's the filterable option
.Selectable()
.Events(e => e.Change("onChange"))
.Pageable(pageable => pageable
.Refresh(true))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(15)
.Model(model => <--- Add this
{
model.Id(m => m.Id);
model.Field(m => m.Code);
model.Field(m => m.Description);
})
.Read(read => read.Action("GetConcessions", "MasterData"))
)
)
答案 1 :(得分:0)
我刚刚在IE11中测试过滤效果很好。
来自Kendo UI疑难解答:
问题:
对象不支持属性或方法&#39; kendoGrid&#39; (在Internet Explorer 9 +中)
解决方案:
确保您的网页中不多次包含jQuery。删除对jQuery的任何重复脚本引用。包括所有必需的Kendo JavaScript文件。
这对您来说是一个类似的问题,所以我要检查所有的javascript文件。