22

こんにちは、私は以下のような剣道グリッドを持っていて、列の null 値をチェックしたいと思いました。条件に基づいて、列にデフォルトの数値を表示したいと思います。

これが私のサンプルコードです。

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

しかし、私はそれを成し遂げる方法を得ていません。解決策はありますか?

4

3 に答える 3

47

フォーマットの場合、JavaScriptをインラインで使用できます

#= street2 != null ? street2 : '' #
于 2014-02-12T21:50:14.357 に答える
18

これが最も便利であることがわかりました:

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

このチェックは、グリッドのデータソースにプログラムで行を追加し、フィールドtypeofの値を指定しない場合に役立ちます。street2

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>
# } #
于 2015-04-08T15:14:43.070 に答える
1
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>
于 2015-01-23T05:43:44.773 に答える