Индикатор выполнения не отображается при удалении записей в сетке кендо - PullRequest
0 голосов
/ 22 июня 2019

Я хочу удалить выбранные записи из источника данных Kendo Grid после подтверждения и показать индикатор выполнения при удалении записей.

Для подтверждения я использую диалоговое окно Kendo и индикатор выполнения для отображения загрузчика.Я выполняю приведенный ниже код в случае нажатия кнопки «Да» из подтверждения.Все работает нормально, но индикатор выполнения не появляется на экране, но когда я делаю отладку, он показывает.Я не знаю, как это выяснить.

Я использую пользовательский интерфейс Jquery kendo.

Действие удаления кода:

    kendo.ui.progress($("#divDialog").data("kendoDialog").element, true);
    //close the progress bar
    var dsLineItem = $("#grdLineItem").data("kendoGrid").dataSource;
    var data = dsLineItem.view();
    for (var i = 0; i < data.length; i++) {
        if (data[i].IsDeleted) {
            dsLineItem .remove(data[i]);
        }
    }
    kendo.ui.progress($("#divDialog").data("kendoDialog").element, false);

Код созданного диалога:

$("#divDialog").kendoDialog({
    visible: false,
    title: "Confiramtion",
    modal: true,       
    show: function onShow(e) {
        var buttons = $('.k-dialog button.k-button');
        $(buttons).eq(0).focus();
    },
    close: function () {
        this.destroy();
    },
    content: "Are you sure want to delete ?",
    actions: function(){
        // I have do code here for deletion
    }
});
$("#divDialog").data("kendoDialog").open();

1 Ответ

0 голосов
/ 22 июня 2019

Возможно, что выполнение без отладки происходит так быстро, что интервал времени выполнения меньше продолжительности анимации индикатора выполнения или какого-либо другого внутреннего таймера индикатора выполнения. Другими словами, панель закрывается, прежде чем она сможет отображаться.

Возможно, вы захотите также закодировать диалоговое окно REMOVAL DONE с автоматическим закрытием, например:

    var alert = kendo.alert("Records removed.");
    setTimeout (function () { alert.close() }, 5000); * auto-close alert after 5 seconds;

Также, в зависимости от методов CRUD, вы можете асинхронно ставить в очередь удаления. В таком случае организация очереди завершается (и индикатор выполнения закрывается) до фактического удаления - индикатор выполнения может управляться обработчиком (ями) событий изменения источника данных сетки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...