У меня есть кендо столбец сетки, как это:Сброс Кендо Сетка столбец
$("#lstCategory").kendoGrid({
dataSource: {
data: info,
autoSync: true,
schema: {
model: {
fields: {
category: { editable: false, type: "string" },
subCategory: { editable: false, type: "string" }
}
}
},
pageSize: 7,
group: {
field: "category",
aggregates: [
{ field: "category", aggregate: "count" }
]
}
},
sortable: true,
scrollable: false,
pageable: true,
editable: true,
columns: [
{ field: "category", title: "Categoría", aggregates: ["count"], groupFooterTemplate: "Total: #=count#" },
{ field: "subCategory", title: "Subcategoria" },
{ command: "destroy", title: "", width: "150px" }
]
});
}
Там я добавить поля для последующей деятельности. Проблема в том, я хочу, чтобы сбросить эту сетку после того, как пост, чтобы очистить его и вставлять другие значения, я пытаюсь использовать следующие команды:
$("#lstCategory").empty(); // this one dissapear kendo grid
$('#lstCategory').data('kendoGrid').refresh();
$('#lstCategory').data().kendoGrid.destroy();
, но ни один из них не смывать мои кендо после поста, что может быть проблемой есть?
Update:
Try, как Dread Пиратская ответ:
после после действия я посылаю это:
var grid = $("#lstCategory").getKendoGrid();
var info = refeshInfoFromServer();
grid.dataSource.data(info);
function refeshInfoFromServer() {
return $("#lstCategory").data("kendoGrid").dataSource.read();
}
Это, кажется, работает, но моя страница застревают в загрузке. Google Chrome Inspector return
kendo.all.min.js:11 Uncaught TypeError: e.slice is not a function
Кусочек ошибка возникает, когда ваша схема не соответствует объекту, который вы получаете от сервера или из заданного списка объектов. Вы должны определить, в какие данные свойства поступают. Если вы не указали, что оно работает с некоторым значением по умолчанию. http://docs.telerik.com/kendo-ui/api/javascript/data/datasource – Ademar
Это не то, что я предложил ... вам нужно повторно заполнить информацию с сервера * однако вы сделали это в первый раз *. Нет способа, чтобы info = grid.dataSource.read(), поскольку метод read() возвращает данные Promise * not *. Итак, что вы сейчас делаете, это установить данные dataSource на Promise ..., который даже не работает удаленно, и почему вы получаете ошибку среза ... поскольку срез вызывается в Promise you вместо этого, вместо законного массива данных. Вы должны показать нам, как информация была заполнена в первую очередь. –