2016-11-03 12 views
0

У меня есть угловое приложение, где я пытаюсь создать пакетное редактирование в сетке Kendo. Я вручную добавляю данные в сетку, поэтому не использую механизм транспорта источника данных, а просто вызываю .data() в источнике данных.Kendo UI DataSource toJSON отстает от значения

Когда я редактирую ячейку, он правильно запускает событие сохранения, которое также передает измененный элемент данных, однако, когда я вызываю .toJSON(), чтобы получить необработанные данные модели, вывод .toJSON() похоже, отличается от вывода самой модели. Это похоже на то, что .toJSON() отстает от итерации, потому что, когда я снова редактирую ячейку, это предыдущее значение, которое я получаю.

Пример этого можно увидеть здесь: http://dojo.telerik.com/ujiSu/5

Попробуйте изменить название продукта, то в консоли вы можете увидеть выход модели и выход model.toJSON()

I попытались вызвать .read() в источнике данных до .toJSON(), но это приводит к тому, что источник данных опустел по какой-либо причине.

Я также смотрел на грязное свойство данных модели, заставляя его загрязнять состояние, но также и без каких-либо разных результатов.

Моя цель - получить необработанные текущие данные, которые отображаются в сетке и источнике данных.

Любая помощь с этим очень ценится.

ответ

0

В случае сохранения сетки модель еще не обновлена. Он будет обновляться сеткой (т. Е. Вставлять в источник данных сетки) после событие сохранения. Это связано с тем, что событие сохранения отменяется с помощью e.preventDefault(). http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#events-save

Итак, e.model содержит текущее состояние элемента DataSource и e.values ​​содержит обновленные поля только после сохранения завершится, после чего значения в e.values ​​выталкиваются в модель DataSource.

Вам либо нужно объединить e.values ​​с e.model в событии сохранения сетки, либо вы можете вместо этого посмотреть на событие изменения DataSource http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#events-change, где действие «itemchange», как это произойдет после события сохранения сетки (если вы его не отменили).

+0

Спасибо. Я отправился с событием anc сохранения события и проверил свойство values. – mda144

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

  • Нет связанных вопросов^_^