Javascript数据加载问题

时间:2014-07-17 13:36:12

标签: javascript jquery if-statement highcharts

我正在构建一个由datelider(jQDateRangeSlider),6个dropdown和一个trendgraph(使用highcharts.js)组成的可视化 因此总共有7个过滤器(6个下拉列表+日期列表),根据这些过滤器,数据集会发生变化,并且图表会针对每个选择进行动态更改。

但是,有许多组合(选择)没有数据。 在这种情况下,我想显示所有过滤器(datelider +下拉列表)而不是图表,我想显示“无数据存在”或任何文本而不是数据 要么 如果可能的话,我还可以显示整个范围的值为0的图表(尽管在这个范围内没有定义为没有数据集,所以我可以采用默认的整个范围)

对于第一个想法,我在尝试:

function printpgtyp(data)
{   
    console.log(data);
    if (data.length > 0)
    {   
        dataset = data;
        p(dataset);
    }
    else
    {   q();    }

}

function q()
{ 
    document.write(" Unavailable data ");
}

function p(data)
{ 
    //All my visualization code
}

所以,这有效,但是我需要另一个页面并显示文本,我不想要这个。

我想查看我的所有过滤器并呈现一条短信,说明此选项没有数据,以便用户可以选择具有数据并继续进行可视化的选择

有办法做到这一点吗?

任何建议都将受到高度赞赏。

2 个答案:

答案 0 :(得分:1)

而不是document.write,将文本添加到div元素:

function q()
{ 
    var div = document.getElementById("elementId");
    div.innerHTML = "this selection has no data";
}

答案 1 :(得分:0)

您是否看过Highcharts的noData插件?如果是空数据集,只需调用series.setData([])即可删除以前的点。