开发者问题收集

如何使用 kendo 模板检查空值

2013-08-05
36654

嗨,我有一个如下所示的剑道网格,我想检查列的空值,并根据条件显示一些默认数字

这是我的示例代码。

 $("#eCount").kendoGrid({
        dataSource: {
            data: myModel,
            pageSize: 5
},      
 columns: [
            {
                field: "Count",
                title: "Count",
                template: '# if (Count == "null" ) {#1#} else {#Count#}#'
            }]
});

但我不知道如何完成。有什么解决办法吗?

3个回答

您可以使用 Javascript 内联格式

#= street2 != null ? street2 : '' #
A.J.
2014-02-12

我发现这是最有用的:

#= typeof street2 == "undefined" || street2 == null ? "" : street2 #

当以编程方式向网格的数据源添加行并且不指定 street2 字段的值时, typeof 检查非常有用:

grid.dataSource.add({}); //this line will generate an error when you're not using 'typeof' check

同样与您的问题相关,对于更复杂的场景,我还发现使用 data.xxx 在模板内进行其他检查也很有用,如下所示:

# if (data.street2 && data.street2.length) { #
    <span>#: street2 # </span>
# } else { #
    <span>N/A</span>
# } #
Lucian
2015-04-08
var dataSource = new kendo.data.DataSource({
    transport: {
    ...
    },
    schema: {
        model: {

            myCount: function () {
                return this.get("Count") == null ? 1 : this.get("Count");
            }
        }
    }

<script id="template">
        #=myCount()#
</script>

或者,如果您没有使用数据源,也可以这样做。

<script id="template">
    # var count = data.Count || 1; # // Javascript  #   #
    <span>#=count#</span>            // Binding  #=   #
</script>
jwize
2015-01-23