kendo ui网格过滤器不适用于整数类型列

时间:2015-03-30 12:45:42

标签: javascript jquery kendo-ui typescript kendo-grid

我遇到了Kendo UI的问题。我无法过滤某些列。

这是一个plunker我的示例,我尝试过滤列id,prog或Max Temps,但它不起作用。

<body>
    <div id="grid"></div>
</body>
<script>
    $("#grid").kendoGrid({
        dataSource: [
            { id: 36308, reportDate: "2015-02-01", prog: 58, state: "Waiting", maxTemps: 0 }, 
            { id: 36309, reportDate: "2015-02-01", prog: 34, state: "Complete", maxTemps: 86400 },
            { id: 36310, reportDate: "2015-02-01", prog: 116, state: "Complete", maxTemps: 86400  },
            { id: 36311, reportDate: "2015-02-02", prog: 58, state: "Complete", maxTemps: 86400 }
        ],
        filterable: true,
        columnMenu: true,
        columns: [
            { field: 'id', title: 'Id', width: '80px' },
            { field: 'reportDate', title: 'Report Date', width: '100px' },
            { field: 'prog', title: 'Prog', width: '60px' },
            { field: 'state', title: 'Status', width: '130px' },
            { field: 'maxTemps', title: 'Max Temps', width: '100px' }
        ]
    });
</script>

我在Chrome上遇到此错误:

  

Uncaught TypeError:(d.prog ||“”)。toLowerCase不是函数

和Firefox上的这个:

  

TypeError:“”。toLowerCase不是函数。

我认为这是因为我的数据类型在这些列上是整数。我不知道如何解决这个问题。有什么想法吗?

2 个答案:

答案 0 :(得分:4)

您需要定义类型编号,以便数字过滤不会出现任何问题。参考下面的代码

columns: [

    { field: 'prog', type:'number',  title: 'Prog', width: '60px' },

  ]

答案 1 :(得分:1)

它也应该是架构中的“数字”。我有“int”但它仍然无效