2013-08-05 43 views
18

你好我有一個劍道格象下面檢查空值,我想檢查列空值,並根據病情,我想顯示一些默認數列如何使用劍道模板

這裏是我的示例代碼。

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

但我沒有得到如何完成它。任何解決方案

+0

我已經得到了soluion '#如果(計數=== NULL){#1#}其他{## =計數##}#' 這是爲我工作 – jestges

回答

31

可以使用的Javascript直列如果格式

#= street2 != null ? street2 : '' # 
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> 
10

我發現這是最有用的:

#= 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> 
# } # 
+0

如果您有一個Kendo下拉列表列作爲Kendo網格中的自定義MVC編輯器,並且下拉列表爲空,您必須使用引用的'typeof'檢查。最初,我只是檢查值是否爲空,但實際上是未定義的。其中一個症狀是,您將在自定義模板上從jquery中獲取未定義的引用錯誤。 – SamG