我有一个可过滤的列,它使用下拉列表作为模板,用户可以在其中选择要过滤的选项。
如何在选择选项时对其进行过滤,而不是在做出选择后用户必须单击过滤器按钮?
我的以下代码不起作用。进行选择时,网格会在未应用过滤器的情况下刷新,并且下拉选择会被重置。
对于我的下拉列表,我有:
function salesPersonFilter(element)
{
element.kendoDropDownList({
dataSource: [{Id: 0, Name: 'Jimbo Jones'}, {Id: 1, Name: 'Jimmy'}],
dataTextField: 'Name',
dataValueField: 'Name',
optionLabel: 'Select salesperson',
template: '#="<span class=\'filterTrigger\'>"+Name+"</span>" #'
})
}
我已将单击事件绑定到 filterTrigger 类:
$('.k-list .filterTrigger').click(function()
{
applyFilters();
})
我将 applyFilters() 函数作为参考:
function applyFilters() // Custom filters...
{
var dupes = {};
var finalFilters = [];
$.each(filterBus, function(i, el) {
if(!dupes[el.field])
{
dupes[el.field] = true;
finalFilters.push(el);
}
});
filterBus = finalFilters ;
grid.dataSource.filter(finalFilters) ;
}