使用Kendo UI过滤JSON数据源

时间:2014-01-13 10:11:23

标签: kendo-ui datasource filtering dropdownbox

我需要从以下JSON自动填充Kendo下拉框:

var products=
[
    {
        id: 1,
        title: "Item-1",
        active: true
    },
    {
        id: 2,
        title: "Item-2",
        active: false
    }
];

所以我使用以下代码来做到这一点,这很好用:

$("#productList").kendoDropDownList({
    dataSource: products,
    dataTextField: "title",
    dataValueField: "id"
});

问题是,我想只看到“有效”的项目。

如何使用Kendo实现它?

1 个答案:

答案 0 :(得分:1)

Sample Jsfiddle

对于过滤器,只能在 dataSoruce 上过滤为什么要创建 kendo.data.DataSource 并在过滤器部分中应用过滤器。

  

过滤器:{ fieled : “活跃”,运算符的: “当量”,:真}

<强> HTML

<div>
    <input id="productList" style="width:250px"/>
</div>

<强>的Javascript

var products=
[
    {
        id: 1,
        title: "Item-1",
        active: true
    },
    {
        id: 2,
        title: "Item-2",
        active: undefined
    },
    {
        id:3,
        title:"Item-3",
        active:false
    },
    {
        id:3,
        title:"Item-4",
        active:undefined
    }
];
var dataSource=new kendo.data.DataSource({
    data:products,
   filter:{
       logic:'or',
       filters:[
           {field:"active",operator:"eq",value:true},
           {field:"active",operator:"eq",value:undefined}
       ]}
});

$("#productList").kendoDropDownList({
    dataSource: dataSource,
    dataTextField: "title",
    dataValueField: "id"
});