【问题标题】:Uncaught Highcharts error #16: www.highcharts.com/errors/16未捕获的 Highcharts 错误 #16:www.highcharts.com/errors/16
【发布时间】:2015-07-30 11:04:07
【问题描述】:

我在我的项目中使用 highcharts.js 库,我收到错误为 Uncaught Highcharts error #16: www.highcharts.com/errors/16。

我知道错误是由于 lib 加载了两次,但我需要帮助来避免这种情况。

基本上我使用 ajax 请求从 .jsp 文件中获取 html 响应。

场景: 1.我有来自 d3.js 的树,当时我点击树节点,我正在发送 ajax 请求并获取整个页面的 html 响应,因为我已经包含了 highchars.js 库

2.现在我在我的产品仪表板页面上,现在我正在单击具有 ajax 请求的后退按钮,然后我再次单击树节点,在这种情况下我将提供我的产品仪表板页面我收到错误 未捕获的 Highcharts 错误 #16:www.highcharts.com/errors/16。

谁能帮我克服这种情况。

谢谢, 南都。

【问题讨论】:

  • 确保你的布局文件中没有包含 highcharts.js。如果您已经将其包含在布局中,则无需将其包含在 html 响应中。

标签: ajax jsp servlets


【解决方案1】:

此错误在第二次在同一页面中加载 Highcharts 或 Highstock 时发生。 这意味着您不应再次包含/加载 highchart.js 文件。 我对此有简单的解决方案,这对我来说很好。

在发送 ajax 请求时传递一些变量,例如“call”

$.ajax({
    url: "http://www.YourUrlHere.php?key=234&call=ajax", 
    success: function(result){
    $('body').html(result);
    }
   });

当您包含/加载 highchart.js 文件时,请检查此变量是否已设置,如果已设置,则不要再次包含/加载此文件。 (亲爱的例子是PHP)

<?php if(empty($_GET['call'])){ ?>
<script src="assets/Highcharts/code/highcharts.js" type="text/javascript"></script>
<script src="assets/Highcharts/code/modules/exporting.js" type="text/javascript"></script>
<?php } ?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-18
    相关资源
    最近更新 更多