Charts 谷歌时间线图表使第一列可点击

Charts 谷歌时间线图表使第一列可点击,charts,google-visualization,react-google-charts,Charts,Google Visualization,React Google Charts,我正在使用谷歌时间线图。是否可以通过将第一列设置为html使其可单击 我尝试将列(用户名)设置为允许html,以便在尝试添加行时,可以将其设置为如下链接 但这似乎不起作用,它被呈现为纯文本。图表没有提供任何单击, 但是我们可以使用javascript/jquery添加常规事件 在分配事件侦听器之前,我们只需要等待图表的'ready'事件 google.visualization.events.addListener(chart, 'ready', function () { $(chart.

我正在使用谷歌时间线图。是否可以通过将第一列设置为html使其可单击

我尝试将列(用户名)设置为允许html,以便在尝试添加行时,可以将其设置为如下链接

但这似乎不起作用,它被呈现为纯文本。

图表没有提供任何单击,
但是我们可以使用javascript/jquery添加常规事件

在分配事件侦听器之前,我们只需要等待图表的
'ready'
事件

google.visualization.events.addListener(chart, 'ready', function () {
  $(chart.getContainer()).find('text[text-anchor="end"]').on('click', onLabelClick);
});
这里,我们使用
元素过滤器
[text anchor=“end”]

仅将事件指定给行标签,而不是x轴标签

请参阅以下工作片段,
它使用单元格属性存储url,
要在单击时检索

google.charts.load('current'{
软件包:[“时间线”]
}).然后(函数(){
var container=document.getElementById('timeline');
var chart=newgoogle.visualization.Timeline(容器);
var dataTable=new google.visualization.dataTable();
addColumn({type:'string',id:'User Name'});
addColumn({type:'string',id:'User id'});
addColumn({type:'string',role:'tooltip',p:{html:true}});
addColumn({type:'string',id:'style',role:'style'});
addColumn({type:'date',id:'Start'});
addColumn({type:'date',id:'End'});
dataTable.addRows([
[{v:'用户A',p:{url:'https://www.google.com'}},'1',null,'cyan',新日期(2020,0,1),新日期(2020,0,31)],
[{v:'用户B',p:{url:'https://www.yahoo.com'}},'2',空,'magenta',新日期(2020,1,1),新日期(2020,1,14)],
[{v:'用户C',p:{url:'https://www.bing.com'}},'3',null',lime',新日期(2020,2,1),新日期(2020,2,10)]
]);
google.visualization.events.addListener(图表'ready',函数(){
$(chart.getContainer()).find('text[text anchor=“end”]”)。on('click',onLabelClick);
});
图表绘制(数据表);
函数onLabelClick(发送方){
var label=$(sender.target).text();
var rowIndex=dataTable.getFilteredRows([{
列:0,
值:标签
}])[0];
var url=dataTable.getProperty(行索引,0,'url');
日志(标签、url);
//打开(url,“U空白”);
}
});

我忘了提到,图表是使用svg绘制的,它不会接受或显示html。。。
google.visualization.events.addListener(chart, 'ready', function () {
  $(chart.getContainer()).find('text[text-anchor="end"]').on('click', onLabelClick);
});