jqplot:如何在荧光笔中显示数组中的值

时间:2014-02-02 17:10:25

标签: javascript arrays jqplot

我有一个图表,表示每月的元素数量。我想在我的荧光笔中显示这些元素的列表。 我收到的数据如下:

[["2013-12-01", 2, ["First element", "Second element"]], ["2014-01-01", 0, []]]

实际上,我能够在工具提示中显示我拥有的元素数量,但我不知道如何显示元素列表。我的荧光笔代码如下:

highlighter: {
                tooltipAxes: 'y',
                formatString:'%u elements',
                showLabel: true,
                sizeAdjust: 7.5,
                  },

它有效地显示元素的数量。 最后,我希望在我的工具提示中将这样的内容作为html代码:

2 elements : <br>
<table><tr><td>First element</td><td> Second element</td></tr></table>

一种解决方案可能是在我的数据中生成html代码,但我想分离格式和数据生成。任何“干净”的解决方案?

提前致谢!

1 个答案:

答案 0 :(得分:3)

查看jqplot.highlighter.js插件的api,它似乎没有给你那个级别的控制(如果它有格式化程序回调会很好)。所以,我只是将插件全部放在一起并使用jqplotDataHighlightjqplotDataUnhighlight事件自行编码:

    $('#chart2').bind('jqplotDataHighlight', 
        function (ev, seriesIndex, pointIndex, data) {
            var aList = myData[pointIndex][2];
            $('#tooltip').html(aList.join('<br/>'));
            $('#tooltip').css('display','block');
        }
    );

    $('#chart2').bind('jqplotDataUnhighlight', 
        function (ev) {
            $('#tooltip').css('display','none');
        }
    );

这是一个有效的example