Javascript Highcharts:从TD中具有HTML标记的表生成图表

Javascript Highcharts:从TD中具有HTML标记的表生成图表,javascript,jquery,highcharts,Javascript,Jquery,Highcharts,我试图从一个表中生成一个图表,该表在TD中有各种HTML标记、链接等,我试图剥离HTML以便在图表中使用,但保留带有链接等的现有表 这是我的代码: $(function() { function stripHTML(html) { var tmp = document.createElement("DIV"); tmp.innerHTML = html; return tmp.textContent || tmp.innerText

我试图从一个表中生成一个图表,该表在TD中有各种HTML标记、链接等,我试图剥离HTML以便在图表中使用,但保留带有链接等的现有表

这是我的代码:

$(function() {
    function stripHTML(html)
    {
        var tmp = document.createElement("DIV");
        tmp.innerHTML = html;
        return tmp.textContent || tmp.innerText || "";
    }

    $('#chart-cont').highcharts({
        data: {
            table: 'datatable',
            parsed: function(columns) {
                for(var i = 0; i < columns[1].length; i++)
                    columns[1][i] = parseInt(stripHTML(columns[1][i]));
            }
        },
        chart: {
            type: 'column'
        },
        title: {
            text: 'Data extracted from a HTML table in the page'
        },
    });
});
你可以在这里看到小提琴


我还认为td中的美元会破坏它,我无法确定如何指定图表使用的列

以您的真实世界为例: 使用您的测试示例:

如果你想要更具动态性的东西,我建议你回去查看highcharts文档

通常,您希望安全、彻底地处理每次迭代中的所有处理:

columns[1][i] = (parseInt(stripHTML(columns[1][i]).trim().replace('$', '')));
注意.trim去掉了多余的空格,而.replace去掉了那些讨厌的美元符号

不幸的是,这意味着您需要进行大量的处理,您必须将这些处理链接在一起才能得到一个全面的函数


一直玩到你有一个可靠的图表模型为止。

我已经用更多真实世界的示例数据调整了tablw,并试图得到第1、3和4列。这是一个艰难的悬赏: