2014-10-06 63 views
0

出于某种原因,showLoading()方法出现错误,指出它未定义。我仔细看了一下chrome调试器,看起来图表变量永远不会被初始化。我该如何解决?HighCharts无法显示加载符号。变量超出范围

我有以下JS:

$(document).ready(function() { 



//Stops the submit request 
$("#dashBoardRequestForm").submit(function(e){ 
    e.preventDefault(); 
}); 

//checks for the button click event 
$("#submitButton").click(function(e){ 
    chart = $('#graph1').highcharts(); 
    console.log("Entered"); 
    //get the form data and then serialize that 
    dataString = $("#dashBoardRequestForm").serialize(); 

    chart.showLoading(); 
...Some Ajax Calls and Stuff... 

在我的HTML文件中的相应的div如下:

<div class="container" id="anotherSection" style="max-width : 90%; width: 90%;"> 
<fieldset> 
    <legend>Graphs:</legend> 
    <div id="graph1" style="width: 33%; height: 28%; margin : 0; float: left;"></div> 
    <div id="graph2" style="width: 33%; height: 28%; margin : 0;float: left;"></div> 
    <div id="graph3" style="width: 33%; height: 28%; margin : 0;float: left;"></div> 

</fieldset> 

+0

在声明/初始化变量时总是使用'​​var'。这可能是你的问题。 – Antiga 2014-10-06 20:51:17

+0

试过了。没有工作。我做了var chart =而不是图表=。仍然给出相同的结果。 – Amitash 2014-10-06 20:54:10

+0

您可以在jsfiddle上将您的示例重新创建为现场演示吗? – 2014-10-07 06:08:53

回答

0

我只能猜测的问题是什么。当使用点击#submit-button时,我希望你已经创建了图表。如果不是,那就是问题所在。因此,这是正确的过程:

  • 创建图表(使用$("#container").highcharts({ ... }); - 注:选择对象)
  • 得到图(使用var chart = $("#container").highcharts(); - 注:不带选项,它的getter)
  • 现在用您的变量来展示装载机:chart.showLoading()