我有一个母版页,使用jquery.load调用其他网页,例如:
$("#loading").show();
$("#arena").load('Project.prx?PID=' + dataReport);
$("#loading").hide();
(Project.prx是一种类似ColdFusion的内部CGI语言,它正在输出HTML和JavaScript。)
在浏览器调试器中,每次我点击一个链接时都会收到以下类似的错误消息,即
Uncaught Highcharts error #16: www.highcharts.com/errors/16
Highcharts网站表示此错误为:
Highcharts 错误 #16
页面中已定义了 Highcharts
当第二次在同一页加载 Highcharts 或 Highstock 时会发生此错误,因此 Highcharts 命名空间已经定义。请注意,Highcharts.Chart 构造函数和 Highcharts 的所有功能都包含在 Highstock 中,因此如果您同时运行 Chart 和 StockChart,则只需要加载 highstock.js 文件。
由于我使用 jQuery 的 load() 方法并针对当前文档中的一个 div,所以 Highcharts 声称我正在加载命名空间的第二个实例是合理的。尽管如此,这正是我想要做的。
那么,有什么办法可以将其他 Highcharts 页面加载到已存在的 Highcharts 命名空间实例中吗?
稍后
我尝试仅将 highcharts 放在目标中而非控制器中,并发出以下命令:
$("#loading").show();
$("#arena").empty();
delete(Highcharts);
$("#arena").load('Project.prx?PID=' + dataReport);
$("#loading").hide();
然而,并非每次都能成功实现这一点。