javascript - kendo ui数据源过滤器 "in"

标签 javascript filter kendo-ui kendo-grid kendo-datasource

如何使用运算符“in”过滤剑道数据源? 示例:

var original_data = [
    {"group": [1, 2], "name": "Coca Cola"},
    {"group": [1, 3], "name": "Pizza"}
];
function filter_articles(original_data, group) {
    return new kendo.data.DataSource({
        data: original_data,
        filter: { field: 'group', operator: 'in', value: parseInt(group) }
    });
}

最佳答案

数据源过滤器选项不支持此功能,因此您必须在创建数据源之前过滤数据,例如像这样:

var original_data = [{
    "group": [1, 2],
    "name": "Coca Cola"
}, {
    "group": [1, 3],
    "name": "Pizza"
}];

function filter_articles(original_data, group) {
    var filtered = original_data.filter(function (item) {
        return item.group.indexOf(group) !== -1;
    });

    var ds = new kendo.data.DataSource({
        data: filtered
    });
    ds.read();

    return ds;
}

var filteredDs = filter_articles(original_data, 3);

( demo )

关于javascript - kendo ui数据源过滤器 "in",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24972259/

相关文章:

javascript - Dreamweaver CS6 - 如何在鼠标悬停时停止 slider ?

javascript - 数字 id 比字符串更轻吗?

javascript - 使用 Jquery 搜索元素的数据属性,部分匹配

matlab - 音频信号滤波器设计

python - 如何使用 Jinja2 模板添加嵌套 groupby

javascript - 是什么导致 Kendo 抛出 "Cannot read property ' offsetTop' of null"js 错误?

javascript - 如何在 GridView 中显示 NULL 值?

javascript - Angularjs - 禁用和取消选中复选框

html - 随着 X 轴值的数量增加,图表不可读

javascript - 将值分配给二维数组 javascript (node.js) 的问题