2013-04-12 1 views
0

Сценарий: Я привязываю записи в файле JSON к сетке, используя MVPM для Kendo UI. Я установил редактируемое свойство Popup, поэтому при редактировании записи всплывающее окно открывается, однако при изменении данных и обновлении запись не обновляется. Следовательно, чтобы закрыть всплывающее окно, нажмите кнопку «Отмена».Kendo UI: Не удалось сохранить информацию о записи в Редактирование/Обновление записи в Grid

После некоторого исследования я наткнулся на функцию сохранения. Что обновляет запись в сетке.

Вопрос: Как определить функцию сохранения в сценарии MVVM? как правило, функция сохранения определяется на сетке следующим образом:

$("#myGridView").kendoGrid({ 
    //... 
    save:function(){ 
     this.refresh 
    } 
)}; 

Вышеупомянутое хорошо работает в стандарте, отличном от MVVM. Как я могу сделать одно и то же MVVM-путь?

var viewModel = kendo.observable({ 
    dataSource:new kendo.data.DataSource({ 
     //... 
    }), 
    save:function(){ 
     //how to implement the same refresh functionality? 
    } 
}); 

Сейчас я прилагаю save событие на сетке events: { save: save }. Вызывается функция save, но когда я нажимаю «Обновить» во всплывающем окне, ничего не происходит. В firebug говорится, что this.refresh не является функцией.

Куда я иду не так ??

Просьба помочь мне.

ответ

0

this не то же самое здесь ... Если вы хотите обновить сетку, я думаю, вы должны написать это:

save : function() { 
    $("#myGridView").data("kendoGrid").refresh(); 
} 
+0

Привет Samuel, Большое вам спасибо за обратную связь !! :) Это сработало ... Спасибо! Поэтому мне нужно использовать синтаксис выше всякий раз, когда мне нужно выполнить какое-либо действие в ритуале сетки? – Hardik

+0

@ Хардик да, это просто для вашей первой части кода, ваш контекст был вашей сеткой, поэтому вы можете использовать прямо 'this' ... –