LINUX.ORG.RU

Не осилил CRUD в KendoUI Grid

 , , kendo ui, ,


0

1

Какие там вообще требования к формату входных/выходных данных? В документации на офф. сайте подробно расписано собственно API, но этот момент почему-то опущен, как будто подразумевается что-то по умолчанию. Если с выходными ещё более-менее понятно (POST он и в Африке POST), то как ему данные с сервера передавать, вообще непонятно (JSON, или что?) И да, чё-то у меня не пашет create. Я вбиваю тестовые данные, жмакаю Save Changes, по нажатию никакого запроса нет. Данные CRUD точно прописаны и скормлены правильно (read пытается дёргать), проверок и валидаций ещё никаких не делал.

Код-то покажи.

как ему данные с сервера передавать, вообще непонятно (JSON, или что?)

Как ему скажешь, так и будет. Можно json, можно jsonp, да хоть xml. В демках есть полностью рабочий вариант. Проверяй, сравнивай. http://demos.kendoui.com/web/grid/editing-inline.html

eth1
()
Ответ на: комментарий от eth1

Ну вот, собственно, весь огород:

function openWindow(link,elem){
 if (!elem) {
  elem=$('<div/>').appendTo('body');
  var winparams={
   draggable: true,
   position: {
    top: 100,
    left: 100
   }
  };
  elem.kendoWindow(winparams);(
 } else {
  elem=$(elem).closest('.k-window-content');
 }
 $(elem).html('<img src=\'img/loading1.gif\'>Загрузка списка курсов...');
 var showResult=function(response){
  elem.html(response);
  var header=elem.find('h5,th').eq(0);
  ((elem.closest('.k-window')).find('.k-window-title')).text(header.text());
  header.remove();
  (elem.find('select')).each(function(){
   $(this).kendoDropDownList();
  });
  (elem.find('input[type=\'number\']')).each(function(){
   $(this).kendoNumericTextBox();
  });
  (elem.find('input[type=\'text\'],textarea')).each(function(){
   $(this).kendoAutoComplete();
  });
  (elem.find('input[type=\'date\']')).each(function(){
   $(this).kendoDatePicker({
    format: 'dd-MM-yyyy'
   });
  });
  (elem.find('table')).each(function(){
   var params={
    resizable: true,
    sortable: true,
    pageable: true,
    scrollable: {
     virtual: true
    },
    navigatable: true,
    dataSource: new kendo.data.DataSource({
     transport:{
      create: {
       url: '/entities/'+$(this).attr('data-entity')+'/create.php',
       type: 'POST'
      },
      read: 'entities/'+$(this).attr('data-entity')+'/read.php',
      update: {
       url: '/entities/'+$(this).attr('data-entity')+'/update.php',
       type: 'POST'
      },
      destroy: {
       url: '/entities/'+$(this).attr('data-entity')+'/destroy.php',
       type: 'POST'
      }
     }
    }),
    editable: {
     create: true,
     read: true,
     update: true,
     destroy: true
    },
    toolbar: ['create','save','cancel']
   };
   $(this).kendoGrid(params);
  });
 };
 var request={
  url: link,
  success: showResult
 };
 $.ajax(request);
}

MiniRoboDancer ★☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.