2015-10-27 125 views
1

我有一個關於Kendo網格和分組的問題 - 我想在分組網格時加入一些邏輯。我需要按狀態分組地址,如果狀態爲空,則按國家分組。這是可行的嗎?謝謝。Kendo網格 - 分組和邏輯

回答

0

您可以創建一個隱藏的列,具有處於可用狀態,否則國家,然後由該列設置數據源到組:

var jsondata = [ 
    {City : "Houston",State : "Texas",Country : "USA"}, 
    {City : "New York",State : "New York",Country : "USA"}, 
    {City : "Austin",State : "Texas",Country : "USA"}, 
    {City : "London",State : "",Country : "UK"}, 
    {City : "Manchester",State :"",Country : "UK"}, 
    {City : "Paris",State : "",Country : "France"} 
]; 

for (var i=0; i < jsondata.length; i++){ 
    var stateCountry = jsondata[i].State ? jsondata[i].State : jsondata[i].Country; 

    jsondata[i].Group = stateCountry; 
} 

$(document).ready(function() { 
    $("#grid").kendoGrid({ 
     dataSource: { 
      data: jsondata, 
      schema: { 
       model: { 
        fields: { 
         City: { type: "string" }, 
         State: { type: "string" }, 
         Country: { type: "string" }, 
        } 
       } 
      }, 
      group: { 
       field: "Group", 
       dir: "asc" 
      } 
     }, 
     groupable: false, 
     scrollable: true, 
     columns: [ 
      { field: "City" }, 
      { field: "State" }, 
      { field: "Country" }, 
      { field: "Group", title: "State/Country", hidden: true } 
     ] 
    }); 
}); 

DEMO

+0

感謝您的回覆 - 我們有一個XML數據源 - 它也可以工作嗎? – ElizabethM42

+0

@ ElizabethM42,這將適用於任何數據源類型。對於XML,您需要修改創建隱藏列的代碼。 – ezanker