function loadGrid(data) { var columns = data[0].report.metaData; columns.forEach(function (element) { element.headerTemplate = "" + element.title + ""; }); localStorage.setItem("MetaData", JSON.stringify(columns)); kendo.ui.FilterMenu.fn.options.operators.integer = { eq: "Equal to", neq: "Not equal to" }; kendo.ui.FilterMenu.fn.options.operators.string = { eq: "Equal to", neq: "Not equal to", contains: "Contains" }; kendo.ui.FilterMenu.fn.options.operators.number = { eq: "Equal to", neq: "Not equal to" }; kendo.ui.FilterMenu.fn.options.operators.date = { eq: "Equal to", neq: "Not equal to" }; //hhttps://docs.telerik.com/kendo-ui/api/javascript/ui/filter/configuration/operators.boolean.neq //hhttps://docs.telerik.com/kendo-ui/api/javascript/ui/filter/configuration/operators.boolean.custom.text kendo.ui.FilterMenu.fn.options.operators.boolean = { eq: "Equal to", neq: "Not equal to" }; $("#grid").empty().kendoGrid({ columns: columns, dataSource: { transport: { read: function (option) { $.ajax({ url: "Components/BindKendoGridData", contentType: 'application/json;', dataType: 'json', type: 'POST', data: kendo.stringify({ reportId: data[0].report.reportId, gridParameter: option.data }), success: function (result) { option.success(result); }, error: function (result) { option.error(result); } }); }, parameterMap: function (data) { return kendo.stringify(data); } }, serverFiltering: true, serverGrouping: true, serverPaging: true, serverSorting: true, serverAggregates: true, aggregate: data[0].report.aggregate, pageSize: 10, schema: { data: function (response) { return response.data; }, total: function (response) { return response.total; }, groups: function (response) { return response.groups; }, aggregates: function (response) { return response.aggregates; } } }, sortable: true, groupable: true, columnMenu: false, filterable: false, reorderable: true, resizable: true, pageable: { previousNext: true, alwaysVisible: false, refresh: true, pageSizes: [10, 20, 30] }, noRecords: true, messages: { noRecords: "There is no data for the selected criteria." } }); // Removes default text - "items per page". $('.k-pager-sizes') .contents() .filter(function () { return this.nodeType === 3; }).remove(); //$('.k-grouping-header').hide(); $("#context-menu").kendoContextMenu({ target: "#grid", filter: "#menuTarget", alignToAnchor: true, copyAnchorStyles: false, showOn: "click", select: function (e) { var groupingFields = $("#grid").data("kendoGrid").dataSource._group; var field = $(e.target).parent()[0].dataset.field; if ($(e.item).text().trim() === "Group Column") { $('.k-grouping-header').show(); groupingFields.push({ field: field, dir: "desc" }); $(e.item).text("Ungroup Column"); } else if (e.item.innerText === "Ungroup Column") { $('.k-grouping-header').hide(); groupingFields.splice(groupingFields.findIndex(({ field }) => field === field), 1); $(e.item).text("Group Column"); } $("#grid").data("kendoGrid").dataSource.read(); } }); };