KendoUI: Не происходит запуск функции из template

88
31 марта 2022, 04:20

Использую библиотеку KendoUI Jquery. Создал класс JS:

class kendoUI{
loadKendoUI(url, itemPerPage,columnsCount, gridName, actButtons, editType, columnNames, filtersCustomOperators, showOperatorsByColumns, selectorsForFilters){
    this.ajaxURL = url;
    this.itemPerPage = itemPerPage;
    this.columnsCount = columnsCount;
    this.gridName = gridName;
    this.actButtons = actButtons;
    this.editType = editType;
    if(filtersCustomOperators != ''){
        this.customOperators = JSON.parse(filtersCustomOperators);
    }

    //  LOADING COLUMNS AND MODELS BEGIN
    this.getColumnsURL = "server-side/view/person_kendo.action2.php?act=get_columns&count="+this.columnsCount;
    var self = this;
    $.ajax({
        url: this.getColumnsURL,
        data: {names: columnNames, operators: showOperatorsByColumns, selectors: selectorsForFilters},
        dataType: "json",
        success: function(kendoData) {
            self.generateGrid(kendoData);
        }
    });
    // LOADING COLUMNS AND MODELS END
}
generateGrid(kendoData){
    this.dataSource = new kendo.data.DataSource({
        //TODO CUSTOM TRANSPORT GET DATA
        transport: {
            read:  {
                url: this.ajaxURL + "?act=get_list&count="+this.columnsCount,
                dataType: "json"
            },
            update: {
                url: this.ajaxURL + "?act=save_priority",
                dataType: "json"
            },
            destroy: {
                url: this.ajaxURL + "?act=disable",
                dataType: "json"
            },
            create: {
                url: this.ajaxURL + "/Products/Create",
                dataType: "json"
            },
            parameterMap: function(data, options, operation) {
                if (operation !== "read" && options.models) {
                    return {models: kendo.stringify(options.models)};
                }
                else {
                    return {add: kendo.stringify(data)};
                }
            }
        },
        batch: true,
        pageSize: this.itemPerPage,
        schema: {
            model: kendoData.modelss,
            total: 'total',
            data: function (data) {
                return data.data;
            }
        },
        serverFiltering: true,
        serverPaging: true
    });
    $("#"+this.gridName).kendoGrid({
        dataSource: this.dataSource,
        pdf: {
            allPages: true,
            avoidLinks: true,
            paperSize: "A4",
            margin: { top: "2cm", left: "1cm", right: "1cm", bottom: "1cm" },
            landscape: true,
            repeatHeaders: true,
            template: $("#page-template").html(),
            scale: 0.8
        },
        selectable: "multiple",
        allowCopy: true,
        persistSelection: true,
        height: 500,
        sortable: true,
        filterable: {
            operators: this.customOperators,
            mode: "row"
        },
        pageable: true,
        toolbar: this.actButtons,
        columns: kendoData.columnss,
        editable: this.editType
    });
   }

}

столбцы и модели возвращает PHP через AJAX и JSON в методе loadKendoUI

JSON такого вида:

{"columnss":[{"field":"reg_date","title":"თარიღი","format":"{0:yyyy-MM-dd}","filterable":{"cell":{"showOperators":false,"template":"betweenFilter"}}},{"field":"name","title":"სახელი","filterable":{"cell":{"showOperators":false}}},{"field":"surname","title":"გვარი","filterable":{"cell":{"showOperators":false}}},{"field":"age","title":"ასაკი","filterable":{"cell":{"showOperators":true}}},{"field":"sex_id","title":"სქესი","filterable":{"cell":{"showOperators":false}},"values":[{"text":"მამრობითი","value":"1"},{"text":"მდედრობითი","value":"2"},{"text":"საშუალო","value":"3"}]},{"command":["edit","destroy"],"title":" ","width":"250px"}],"modelss":{"id":"id","fields":{"id":{"editable":true,"type":"number"},"reg_date":{"editable":false,"type":"date"},"name":{"editable":true,"type":"string"},"surname":{"editable":true,"type":"string"},"age":{"editable":true,"type":"number"},"sex_id":{"editable":true,"type":"number"}}}}

Как вы можете видеть по JSON в первомже COLUMN-е есть обЪект "template":"betweenFilter"

но функция betweenFilter не запускаеться

function betweenFilter(args) {
    alert('hello');
}

Кто знаком с KendoUI подскажите что делать?!

READ ALSO
unity3D вращение объекта

unity3D вращение объекта

Неделю назад начал изучать движок Unity, сейчас не могу разобраться с вращениемДопустим есть стрелка (представьте, например, стрелку спидометра),...

111
Немогу подключиться к TCP/IP серверу

Немогу подключиться к TCP/IP серверу

Запустил сервер но почему-то не могу к нему подключиться

199
Не отображается конструктор и не работает отладка при Live Share

Не отображается конструктор и не работает отладка при Live Share

Если пригласить в проект Visual Studio (WPF,NET) через Live Share, конструктор макета отображается только у меня, запускать отладку тоже можно только на моем...

73
Как открыть SQL базу?

Как открыть SQL базу?

Хотелось бы подключиться к серверу (phpMyAdmin) и сделать выборку необходимых таблиц

150