2013-03-05 5 views
0

Вот простой пример, который я пытаюсь построить как упражнение, и мой объект DataSource возвращается без данных.Простой Kendo UI удаленный DataSource возвращает пустой

var data = new kendo.data.DataSource({ 
      transport: { 
       read: { 
        url: "data.json", 
        dataType: "json" 
       } 
      } 
     }); 

     console.dir(data); 

data.json

[ 
    { 
     "text": "Brand One" 
    }, 
    { 
     "text": "Brand Two" 
    }, 
    { 
     "text": "Brand Three" 
    }, 
    { 
     "text": "Brand Four" 
    } 
] 

Любые идеи?

ответ

-1

я могу загрузить массив нагрузки на DataSource и объект возвращается см

var data_input= [ 
    { 
     "text": "Brand One" 
    }, 
    { 
     "text": "Brand Two" 
    }, 
    { 
     "text": "Brand Three" 
    }, 
    { 
     "text": "Brand Four" 
    } 
]; 

var data = new kendo.data.DataSource({ 
      transport: { 
       read: { 
        data: data_input, 
        dataType: "json" 
       } 
      } 
     }); 

console.log(data) 
+0

транспорт.read.data используется для отправки дополнительных параметров удаленной службе. Вы можете просто назначить данные для transport.read.data Если это поможет: http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-transport.read.data –

3

Есть две проблемы с вашим кодом

  1. Прежде всего, необходимо вызвать data.read() - так запрос выполняется
  2. Поскольку операция выше является асинхронной, вызов data.data() не вернет ничего, если вы вызовете это сразу после кормы используя data.read(). Чтобы подождать, пока данные не будут восстановлены, вам нужно будет использовать событие requestEnd.
Смежные вопросы