Javascript Highcharts:从TD中具有HTML标记的表生成图表
我试图从一个表中生成一个图表,该表在TD中有各种HTML标记、链接等,我试图剥离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
$(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列。这是一个艰难的悬赏: