如何

2012-06-22 99 views
0

我使用导轨3.2.1加载其他数据之后加载图表如何

我的页面被分成5份

部分-1报头
部分-2格面积
部分3图形部
部分4以表格形式
数据 部分-5-页脚

现在我的问题是图需要花费太多时间来上传。
由于此页面需要花费太多时间来加载。

请告诉我任何方法,使我的图加载在最后,但其他数据将显示。

+0

我把你的意思“下载”而不是“上传”?你用什么技术来渲染图形? – 2012-06-22 09:24:18

+0

我正在使用jqPlot图 –

回答

0

您可以做的第一件事是在条件为真时调用绘制图形的函数。例如:

(function isMyDataLoaded(){ 

    //if the table is rendered 
    if($('#TableData').length==0){ 
     setTimeout(isMyDataLoaded,100);  
    }else{ 
      DrawGraphFunction();  
    } 
})(); 

注意:我不知道你的逻辑,所以你可以使用其他条件。

+0

如何检查我的其他数据是否呈现? –

+0

当其他数据被渲染时,他用它呈现表格 - 我用过的是检查是否有这样的ID表格 - $(#TableID).length – gotqn

+0

在jquery中没有什么可以找到你说的。 –

1

如果问题是图表数据下载时间过长,那么您需要使用AJAX调用单独下载它,而不是直接将其包含在页面中。喜欢的东西:

$.getJSON("/url/to/your/data", function(data){$.jqplot('chart1', data)}); 

...你就必须要通过/url/to/your/data提供您目前嵌入到页面相同的图形数据的服务器上支持。该代码将开始下载,然后将图形数据与页面的其余部分分开显示。

如果会与该DOM没有完全准备好(不知道为什么它会)问题,然后换你的电话,以便它只会发生在文档完全呈现:

$(function(){ 
    $.getJSON("/url/to/your/data", function(data){$.jqplot('chart1', data)}); 
});