2015-10-24 2 views
0

Используя следующий источник в качестве шаблона: https://github.com/Simba-Mupfunya/Kendo-UI-SPA-Template-vs2013-MVC5Как связать сетку kendo ui с ее источником данных в этом MVC SPA?

Я пытаюсь связать другой Кендо UI управляет как сетки и планировщик для модели в JavaScript «код позади». То, что я пытался ...

HTML:

<div data-role="grid" 
    date-scrollable="true" 
    data-editable="true" 
    data-toolbar="['create', 'save']" 
    data-columns="[ 
     { 'field': 'Name', 'width': 50 } 
     , { 'field': 'Phone' } 
     , { 'field': 'Email' } 
    ]" 
    data-bind="source: contacts, 
    visible: isVisible, 
    events: { 
     save: onSave 
     }" 
    style="height: 200px"> 
</div> 

ЯШ:

define([ 
'text!views/contacts/contacts.html' 
], function (html) { 

var contactDataSource = new kendo.data.DataSource({ 
    data: [ 
     { Name: "Jim Dandy", Phone: "555-1234", Email: "[email protected]" } 
     , { Name: "Joe Coffee", Phone: "555-1234", Email: "[email protected]" } 
     , { Name: "Ham Son", Phone: "555-1234", Email: "[email protected]" } 
     , { Name: "Dan Fooey", Phone: "555-1234", Email: "[email protected]" } 
    ], 
    schema: { 
     model: { 
      fields: { 
       Name: { type: "string" } 
       , Phone: { type: "string" } 
       , Email: { type: "string" } 
      } 
     } 
    } 
}); 

//contactDataSource.read(); 

var viewModel = kendo.observable({ 
    title: 'Contacts' 
    , contacts: contactDataSource 
}); 

kendo.bind(html, viewModel); 

var view = new kendo.View(html, { 
    model: viewModel, 
    show: function (e) { 
     kendo.fx(this.element).fade('in').duration(500).play(); 
    } 
}); 

return view; 

}); 
+0

Я не знаком с реализацией зрения кендо, но сделал вы пытаетесь переместить 'kendo.bind()' внутри функции show() 'представления? Мне кажется, что вы выполняете метод привязки, прежде чем что-либо будет показано. – Brett

ответ

0

Это не отвечает на конкретную проблему, однако в своей 'реальной' реализации, я думаю, что вы» Вам нужно получить данные из реального источника данных? В этом случае вы, вероятно, хотите, чтобы данные поступали через контроллер MVC или Web Api. Для этого вам необходимо вручную настроить вызов AJAX в вашем источнике данных. Смотрите это (вам нужно использовать свойство «читать» в «» транспортного объекта, который будет автоматически трудоустроить AJAX для посылки вызова)

http://docs.telerik.com/kendo-ui/framework/datasource/basic-usage#creating-a-datasource-for-remote-data