Kendo 网格问题。确认消息未更新

Issue with Kendo Grid. The confirmation message is not updating

我正在使用 Kendo 网格列出用户数据。发现了一个问题。当用户单击删除按钮时,会出现一条验证消息,指出“你是要删除的用户吗,用户 Joe Blow”。如果我单击取消,并尝试使用不同的用户“Sally Smith”,错误消息将是“Are you user you want to delete, user Joe Blow”。我检查了功能,正确的数据正在运行。

我检查了 Chrome 调试器中的代码,发现错误消息是从以下代码返回的:https://kendo.cdn.telerik.com/2020.1.219/js/kendo.all.js

我确实有一个将值重置为“”的函数。但是,当数据到达 kendo.all.js 时,数据没有得到更新。当数据到达那里时如何重置数据?

这是我的按钮代码:

template: '<button class="btn btn-danger btn-sm" onclick="confirmDelete(\'#=ExternalId#\', \'#=FirstName#\', \'#=LastName#\', \'#=EmailAddress#\')" style="padding: .25rem;">X</button>',

这是我的删除功能代码:

var confirmDelete = function (eid, firstN, lastN, emailA) {
        var dialog = $("#delete-confirm-modal");
        externalId = eid;
        firstName = firstN;
        lastName = lastN;
        emailAddress = emailA;

        if (dialog.data("kendoDialog")) {
            dialog.data("kendoDialog").open();
        } else {
            dialog.kendoDialog({
                width: "450px",
                title: "Confirm delete",
                closable: true,
                modal: true,
                content: "<p>Confirm that you wish to delete user " + firstName + " " + lastName + "(" + emailAddress + "). Once this is done, it cannot be reversed.</p>",
                actions: [
                    {
                        text: "Cancel",
                        primary: true
                    }, {
                        text: "Confirm",
                        action: function (e) {
                            var url = "/apic/usermaintenance/deleteuser/" + externalId;
                            $.get(url,
                                function (data) {
                                    //$("#userListGrid").data("kendoGrid").dataSource.read;
                                    //$("#userListGrid").data("kendoGrid").refresh();

                                    /*$('#userListGrid').data('kendoGrid').dataSource.read().then(function () {
                                        $('#userListGrid').data('kendoGrid').refresh();
                                    });*/

                                    KendoGridRefresh();
                                    
                                    kendo.alert("User has been deleted");
                                }).fail(function () {
                                    kendo.alert("Unable to delete user. An error has occured. Please try again.");
                                });
                                                                               }
                    }
                ],
                close: onClose
            });
        }
    };

第一次点击是初始化对话框,第二次点击是打开已经初始化的对话框,其中包含旧内容。

您需要更新对话框内容:

    if (dialog.data("kendoDialog")) {
        dialog.data("kendoDialog").content("<p>Confirm that you wish to delete user " + firstName + " " + lastName + "(" + emailAddress + "). Once this is done, it cannot be reversed.</p>");
        dialog.data("kendoDialog").open();
    }

示例:update content