web-dev-qa-db-fra.com

Comment vérifier les valeurs nulles en utilisant le modèle kendo

Salut, j'ai une grille de kendo comme ci-dessous et je voulais vérifier la valeur nulle de la colonne et en fonction de la condition, je veux afficher un numéro par défaut dans la colonne

Voici mon exemple de code.

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

Mais je ne sais pas comment le faire. Toute solution?

22
jestges

Vous pouvez utiliser Javascript en ligne si le format

#= street2 != null ? street2 : '' #
45
vordimous

J'ai trouvé que c'était le plus utile:

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

La vérification typeof peut être utile lorsque vous ajoutez des lignes par programme à la source de données de la grille et ne spécifiez pas la valeur de street2 champ:

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

Également lié à votre question, pour des scénarios plus complexes, j'ai également trouvé utile de faire d'autres vérifications à l'intérieur du modèle en utilisant data.xxx, comme ça:

# if (data.street2 && data.street2.length) { #
    <span>#: street2 # </span>
# } else { #
    <span>N/A</span>
# } #
18
Lucian
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>

Ou vous pouvez le faire si vous n'utilisez pas de source de données.

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