首页 > 解决方案 > onClick 事件上的 JavaScript 代码导致“危险的 Request.Path”错误

问题描述

我正在尝试扩展我们正在使用的 CMS 系统...编写 HTML 代码来创建一个按钮,其中 onClick 事件调用定义的自定义 JavaScript 函数。

被调用的函数首先使用“confirm()”查询用户,如果用户单击 OK,则执行 window.location 重定向;如果用户单击 CANCEL,则该方法不执行任何操作。

重定向最终会发生,但是,在这两种情况下都会出现错误。在选择 OK 的情况下,由于重定向,显示的错误是短暂的(但错误仍然会发生)。在选择取消按钮的情况下,在我的页面底部出现以下错误:“表单出现错误。请联系管理员或查看日志以获取更多信息。”

我检查了我能找到的所有日志,但找不到更多详细信息。我关闭了“customErrors”,当查看在 Chrome 的 DevTools 环境中执行的操作时,我看到以下内容:“从客户端检测到潜在危险的 Request.Path 值 (:)”

我不知道为什么我会看到这个错误......我还在下面粘贴我的按钮代码。有什么建议么?

PS 运行 Bootstrap v3

function jsDeleteFileID(p_intFileID)
{
  var objAnswer = confirm("Are you sure you want to delete this file?");
  if (objAnswer == true)
  {
    //****************************************
    // Reload Page w/ Parameters
    //****************************************
    location.href='http://www.MyRedactedWebsiteDomain.com/RedactedWebpageName?DFID=' + p_intFileID + '&ReturnURLID=AAA-AAA-AAA-AAA';
  }
  else
  {
    return false;
  }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<button type="button"
        data-loading-text="Please wait..."
        data-name="DeleteFile152"
        class="btn submit form-button af-btn-loading btn-normal btn-danger"
        id="dnn111DeleteFile152"
        onClick="jsDeleteFileID(152); return false;"
        <i class="glyphicon glyphicon-trash"></i> Delete
</button>

标签: javascripthtmlbuttondnn9

解决方案


把上面的贴出来后,我就知道问题出在哪里了。我想在这里发布我的解决方案,以防其他在 DotNetNuke 上编程并使用 DNNSharp 模块的人也有同样的问题。

问题出在类属性中列出的标签中。我删除了两个类标签:“提交”和“表单按钮”。这两个类添加了一些额外的处理,这些处理在我的导致错误的自定义 java 代码之后运行。由于我只希望我的代码运行而不是其他任何东西,因此删除这两个类标签会阻止额外的代码运行,现在我的按钮按预期运行。


推荐阅读