我有一个Kendo网格,可以正确显示数据。我想添加一个输入框,当用户在网格中键入内容时,该框会过滤数据,例如网格的搜索框功能。
最初,我设置网格的数据源:
$("#grid").data("kendoGrid").setDataSource(new kendo.data.DataSource({ data: result }));
过滤器的应用如下:
$("#grid").data("kendoGrid").dataSource.filter({
logic: 'or',
filters: [
{ field: 'lastName', operator: 'startswith', value: viewModel.get('searchValue') },
{ field: 'address', operator: 'startswith', value: viewModel.get('searchValue') }
]
});
和输入框:
<input data-bind="value: searchValue" />
但是,只要更改
searchValue
,dataSource就会保持不变,并且网格也不会更改。 最佳答案
您可以在下面的代码中连接onchange函数
var kgrid = $("#grid").data("kendoGrid");
var orfilter = { logic: "or", filters: [] };
orfilter.filters.push({ field: "lastName", operator: "startswith", value: viewModel.get('searchValue') },
{ field: "address", operator: "startswith", value: viewModel.get('searchValue') });
kgrid.dataSource.filter(orfilter);