2013-02-27 2 views
0

Как я могу привязать свои дочерние данные в одном столбце? Я хочу написать «Технология, экономика, жизнь» в том же столбце и в той же строке. Но я думаю, что мне нужно зациклиться на «Категория». Как я могу это сделать, любую идею?Ребенок в сетке кендо

Мои данные:

{ 
    "ParentId": "00000000-0000-0000-0000-000000000000", 
    "Title": null, 
    "UserGroupModel": null, 
    "EntityAccessData": [ 
     { 
      "EntityTitle": "User", 
      "Access": { 
       "Id": "59d0c6f7-8f93-497a-854d-bdd4a42ade94", 
       "Title": "Can Delete" 
      }, 
      "Category": [ 
       { 
        "Id": "00000000-0000-0000-0000-000000000000", 
        "Title": "Technology" 
       }, 
       { 
        "Id": "00000000-0000-0000-0000-000000000000", 
        "Title": "Economy" 
       }, 
       { 
        "Id": "00000000-0000-0000-0000-000000000000", 
        "Title": "Life" 
       } 
      ], 
      "HasAccess": true 
     }, 
     { 
      "EntityTitle": "UserGroup", 
      "Access": { 
       "Id": "7c65be44-11b0-4cf4-9104-0ad999e7e280", 
       "Title": "Can Edit" 
      }, 
      "Category": [ 
       { 
        "Id": "00000000-0000-0000-0000-000000000000", 
        "Title": "Technology" 
       }, 
       { 
        "Id": "00000000-0000-0000-0000-000000000000", 
        "Title": "Economy" 
       }, 
       { 
        "Id": "00000000-0000-0000-0000-000000000000", 
        "Title": "Life" 
       } 
      ], 
      "HasAccess": true 
     } 
    ] 
} 

Мой Сценарий:

$("#grid").kendoGrid({ 
     dataSource: { 
      type: "json", 
      transport: { 
       read: "/getData" }, 

      schema: { 
       data: "EntityAccessData" 

      }, 

       group: [{ 
       field: "EntityTitle" 
      }], 

     }, 
     columns: [ 
     { 
      field: "Access.Id", 
      title: "ID" 
     }, 
     { 
      field: "Access.Title", 
      title: "Access title" 
     }, 
     { 
      field: "HasAccess", 
      title: "has access" 
     }, 
     { 
      field: "Category.Title", // ***wrong*** 
      title: "Category" 
     }, 
     ] 

    }); 

ответ

1

Определение schema следующим образом:

schema: { 
    data : "EntityAccessData", 
    model: { 
     CategoryTitle: function() { 
      var category = []; 
      $.each(this.Category, function(idx, elem) { 
       category.push(elem.Title); 
      }); 
      return category.join(","); 
     } 
    } 

}, 

Где добавить дополнительное поле CategoryTitle, которое является результатом присоединения Title массива Category а затем определите column как:

{ 
    field: "CategoryTitle()", 
    title: "Category" 
} 
+0

Спасибо, это работает как шарм! – linepisode

Смежные вопросы