DotNetNuke 9 dnnConfirm 对话框错误

DotNetNuke 9 dnnConfirm dialog error

似乎自 DotNetNuke 9 以来,内置确认日志 dnnConfirm 不再像以前那样工作或已被删除。错误是 Uncaught TypeError: $(...).dnnConfirm is not a function

我是这样用的

<script type="text/javascript">
    $('.DeleteButton').each(function (index, item) {
        $(this).dnnConfirm({
            text: 'Delete this item?',
                yesText: 'Yes',
                noText: 'No',
                title: 'Delete Dialog',
                width: 400,
                isButton: false
            });
        });
</script>

我在文档中进行了查找,但找不到任何内容。

有人有fix/workaround/solution吗?

更新

我刚发现函数 当您以超级用户身份登录时出现,而不是以访客或普通用户身份登录时出现。这表明某些 JS 文件仅在超级用户时加载,而它们始终存在于以前的版本中。

已确定问题并找到解决方案。客户端丢失的文件是 dnn.jquery.js。在旧版本的 DNN (< 7.3) 中,它是通过在代码隐藏中调用 DotNetNuke.Framework.jQuery.RequestDnnPluginsRegistration(); 添加的。

但从 7.3 版本开始,它已被替换为 JavaScript.RequestRegistration

using DotNetNuke.Framework.JavaScriptLibraries;

protected void Page_Load(object sender, EventArgs e)
{
    JavaScript.RequestRegistration(CommonJs.DnnPlugins);
}