我想点击Google树形控件中的一个矩形,并在页面的另一部分设置一个值。
我正在使用以下代码,但没有任何事情发生在警报中。
tree.draw(data, {
minColor: '#f00',
midColor: '#ddd',
maxColor: '#0d0',
headerHeight: 15,
fontColor: 'black',
showScale: true
});
}
// this code does not work
function myOnClickFunction(){
TreeMap.getSelection();
var txt = TreeMap.getValue(0, TreeMap.getSelection());
alert(txt);
}
google.visualization.events.addListener(TreeMap, 'select', myOnClickFunction);
// end of none working code
</script>
</head>
<body>
<div id="chart_div" style="width: 500px; height: 900px;"></div>
</body>
</html>
答案 0 :(得分:0)
首先,您在绘图函数中为TreeMap可视化tree
命名了变量,但尝试使用名为TreeMap
的变量创建事件处理程序。 Ssecond,您的事件处理程序不在您的tree
变量的范围内。第三,getSelection
方法本身不返回列索引,因此您无法在getValue
方法调用中直接使用输出。更改变量名称并在绘图函数中移动事件处理程序,并调整事件处理程序内的代码,如下所示:
function myOnClickFunction(){
var selection = tree.getSelection();
if (selection.length) {
var txt = data.getValue(selection[0].row, selection[0].column);
alert(txt);
}
}
google.visualization.events.addListener(tree, 'select', myOnClickFunction);