Po prostu zacząłem eksperymentować z interfejsem użytkownika Kendo i utknąłem na tym, jak można użyć standardowego obiektu javascript do użycia jako źródło danych.Źródło danych dla Kendo jest ustawiane za pomocą obiektu javascript
To dość łatwe do początkowego załadowania danych z obiektu javascript, ale chcę mieć możliwość odzyskania danych po wystąpieniu zmian w wyniku interakcji użytkownika.
Najlepiej, jeśli ten obiekt jest w jakiś sposób zsynchronizowany z widżetem, więc wszystko co musisz zrobić, to odczytać/zapisać do tego obiektu javascript.
Nasze dane:
var _data = [
{
eventID: 8,
title: "Group meeting.",
start: new Date("2013/06/13 07:00"),
end: new Date("2013/06/13 08:30"),
pending:false,
recurrenceRule: "",
recurrenceException: "",
description: "Take my brother to his group meeting.",
isAllDay:false,
ownTimeSlot:true,
careAssistantId: 5,
clientId: 6
},{
eventID: 9,
title: "Make dinner.",
start: new Date("2013/06/13 11:00"),
end: new Date("2013/06/13 13:30"),
pending:true,
recurrenceRule: "",
recurrenceException: "",
description: "Make dinner for my mom.",
isAllDay:false,
ownTimeSlot:true,
careAssistantId: 5,
clientId: 6
} ];
Init widget:
function save(){
console.log(_data);
}
$('.schedule').kendoScheduler({
date: new Date("2013/6/13"),
startTime: new Date("2013/6/13 07:00 AM"),
height: 600,
views: [ { type: "week", selected: true }],
save: save,
dataSource:_data
});
Oto kod instalacyjny do przetestowania (uwaga console.log debug SAVE):
Jak należy czytać/pisać "stan" w świecie Kendo UI?
"DataSource.data(). ToJSON()" działa idealnie.Jedyny problem, jaki widzę, to usunięcie i otrzymanie zdarzenia "usuń". Nadal widzę zdarzenie w źródle danych ... – zaf
@zaf Nie rozumiem problemu - czy możesz zaktualizować swoje skrzypce, aby je zilustrować? –
http://jsfiddle.net/NZ4EM/9/ Widzę, że prawdopodobnie usunęło zdarzenie PO wywołanie funkcji, ponieważ jeśli usuniesz oba zauważysz zmniejszenie debugowania o jeden. – zaf