Google GeoChart onclick setCell无效

时间:2012-06-06 17:42:38

标签: javascript html google-maps google-visualization

我很难使用Google GeoCharts API和复选框onclick突出显示国家/地区。

我的displaymarkers函数应该使用setCell函数,方法是将输入值作为DataTable的行索引传递。

然而,将check.value传递给setCell似乎不起作用。如果我只是简单地放data.setCell(1, 1, 1);就可以了。

如果不做大量的if语句,我该如何做呢?

使用Javascript:

var data;
var chart;
var options;

function drawRegionsMap() {
    data = google.visualization.arrayToDataTable([
        ['Country', 'Popularity'],
        ['United States', 1],
        ['RU', 1]
    ]);

    options = {legend: 'none'};

    chart = new google.visualization.GeoChart(document.getElementById('chart_div'));
    chart.draw(data, options);
};

function displaymarkers(check) {
    // Checkbox has been checked
    if (check.checked) {
        data.setCell(check.value, 1, 1);
    } else { // Checkbox has been unchecked
        data.setCell(check.value, 1, 0);
    }

    chart.draw(data, options);
}

HTML:

<input type="checkbox" name="us" onclick="displaymarkers(this)" value="0" checked="checked" />US
<input type="checkbox" name="russia" onclick="displaymarkers(this)" value="1" checked="checked" />Russia

1 个答案:

答案 0 :(得分:1)

check.value返回一个字符串。 parseInt(check.value)有效。