1

У меня проблема с событиями в управлении сеткой KendoUI. Я назначил событие «saveChanges» после инициализации сетки. Я использую popup для редактирования данных. Я хочу запустить событие «saveChanges», когда пользователь нажимает кнопку «Сохранить». К сожалению, событие не уволено. Я не могу понять, в чем проблема, более того, другие события работают. Сетка инициализируется в помощниках MVC. События назначаются в JavaScript.Сетка KendoUI не срабатывает saveChanges event

Вот код JavaScript, который я использую:

function bindGridEvents() { 
     var that = this; 

     //kendoGrid is an abbreviation of: $("#grid").data("kendoGrid") 

     kendoGrid.bind("dataBound", function() { }); // works 
     kendoGrid.bind("edit", function (event) { }); // works 
     kendoGrid.dataSource.bind("error", function (event) {}); // works 
     kendoGrid.bind("saveChanges", function (event) { console.log("This event is not fired!"); }); 
     kendoGrid.bind("save", function (event) { }); // works 
    } 

Я уже потратил много времени для нахождения решения по моей собственной, не увенчалась успехом. Буду признателен за любую помощь.

EDIT:

Я обнаружил, что проблема была. Документация говорит:

событие saveChanges активируется, когда пользователь нажимает кнопку «сохранить» .

Но когда всплывающее окно показывает команду с меткой «Сохранить», это тип «обновление». Вот почему он не работает в режиме редактирования. Он работает только на панели инструментов. Сначала это не очевидно, и документация не говорит слишком много, поэтому будьте в курсе этого.

ответ

0

Не видя кода, я не могу быть уверен. Событие не будет срабатывать, если вы не сделаете никаких изменений, которые я считаю. Хорошим примером, который работает для меня, является here. Если вы имеете дело с фактическим редактированием dataItem не через функции сетки, убедитесь, что вы пометили элемент как «грязный». В идеале отправьте свой код как JsFiddle или JSBin.

+0

Спасибо за ваш интерес. Я только что нашел причину. – tkestowicz

Смежные вопросы