Google图表HTML工具提示,其中包含javascript onclick事件
Google Charts HTML tooltip with javascript onclick event inside of it?
我一直在尝试在谷歌图表工具提示中使用图表选项isHtml: true
进行点击事件。到目前为止,我已经尝试了两种方法来完成这项工作,但都没有成功。
1) 通过在工具提示中添加一个按钮来编写onclick函数。但是,每当我点击按钮时,我都会收到以下错误"未捕获引用-函数未定义"。我试着在指令中几乎所有地方都放置函数,但代码似乎没有接受。
工具提示中的HTML代码:
'<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>
exportCSV函数:
var exportCSV = function(){
console.log("Function Triggered");
}
2) 在谷歌图表中添加chart.setAction()。但这里的问题是,我在图表选项中有isHtml: True
。当我尝试使用以下代码时,它似乎没有任何作用。
chart.setAction({
id: 'export',
text: 'Export CSV',
action: function() {
selection = chart.getSelection();
console.log(selection);
}
});
但是,当我尝试用chart.setAction中的enabled
替换函数action
时,当我单击列或条形图而不是工具提示中的导出数据按钮时,代码会返回对象。
我只需要在工具提示中捕捉单击事件。如果有人能在这个问题上帮我,那就太好了。
谢谢!
I认为您只需要在全局范围内定义exportCSV
,
请参阅以下示例。。。
此外,如果图表options
中没有tooltip {trigger: 'selection'}
,
我似乎无法在工具提示消失之前单击它
必须单击饼图才能查看工具提示。。。
google.charts.load('current', {
callback: function () {
var data = google.visualization.arrayToDataTable([
['Genre', 'Percentage of my books', {role: 'tooltip', type: 'string', p: {html:true}}],
['Science Fiction', 217, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['General Science', 203, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['Computer Science', 175, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['History', 155, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['Economics/Political Science', 98, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['General Fiction', 72, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['Fantasy', 51, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>'],
['Law', 29, '<h5 style="padding-left:.66em;" id="export" href="#" onclick="exportCSV()">Export CSV</h5>']
]);
var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
var options = {
height: 400,
tooltip: {
isHtml: true,
trigger: 'selection'
},
width: 600
};
chart.draw(data, options);
},
packages: ['corechart']
});
var exportCSV = function(){
alert("Function Triggered");
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
- 如何在Symfony2中的表单小部件中包含javascript
- Android键盘不适用于包含Javascript的网页
- 在document.write中包含javascript的原因
- Google图表HTML工具提示,其中包含javascript onclick事件
- 将包含 javascript 的文本绑定到模板中的 innerHTML
- 加载包含 Javascript 的外部 PHP 文件
- 将外部 SVG 和包含 JavaScript 加载到 HTML 中
- Orchard - 在分部视图中包含 Javascript 文件
- 如何检查列表是否包含 javascript 中的字符串
- 验证字符串是否仅包含 javascript 中的某些字符
- 在另一个Javascript文件中包含Javascript文件并加载
- 有没有可能在asp-mvc4中使用ajax呈现的视图中包含javascript
- 使用script标记通过CSS文件在程序中包含JavaScript
- 在Phoenix Framework应用程序的某些页面上包含Javascript
- 替换对象's属性,其中包含JavaScript中另一个对象的属性,不包含库
- 如何仅在尚未包含Javascript和css文件的情况下才包含它们
- 添加包含JavaScript而非URL的书签
- Jade包含JavaScript文件的最佳实践
- 如何检查 NS 字符串是否包含 javascript 函数
- 如何使用Javascript Twig模板正确地包含Javascript