0

似乎自 DotNetNuke 9 以来,内置确认 dalogdnnConfirm不再像以前那样工作或已被删除。错误是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>

我在文档中查找了它,但找不到任何东西。

有没有人有修复/解决方法/解决方案?

更新

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

4

1 回答 1

2

问题已被确定并已找到解决方案。客户端缺少的文件是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);
}
于 2017-01-14T21:52:13.963 回答