簡體   English   中英

函數中帶有Jquery的Google餅圖用法?

[英]Google Pie chart usage with Jquery inside a function?

我想在jquery中使用Google餅圖,並希望根據條件生成圖表。

google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
var options = {title: 'Sample Chart'};
function drawChart() {
    var data1 = new google.visualization.DataTable();
    data1.addColumn('string', 'col1');
    data1.addColumn('number', 'col2');
    data1.addRow(["sample", 12]);
    data1.addRow(["sample", 24]);
    var chart = new google.visualization.PieChart(document.getElementById('donutchart'));
    chart.draw(data1, options);
}

jQuery函數

$.each(result, function(index) {
    $("#tableContents").append("some html generation");
});

我希望data1在Jquery循環期間准備好並在函數末尾繪制。 我看到如果我在函數drawchart之外取出代碼的data1部分(如下所示),則會得到

在控制台日志中,

無法讀取未定義錯誤的屬性“ DataTable”

我從drawChart()中刪除了代碼的data1部分,

var data1 = new google.visualization.DataTable();
data1.addColumn('string', 'col1');
data1.addColumn('number', 'col2');
data1.addRow(["sample", 12]);
data1.addRow(["sample", 24]);

請幫助,在此先感謝。

您可以像這樣將結果解析到DataTable中:

function drawChart() {
    var data1 = new google.visualization.DataTable();
    data1.addColumn('string', 'col1');
    data1.addColumn('number', 'col2');

    $.each(result, function(index) {
        $("#tableContents").append("some html generation");
        // assumes results[index] has "col1Value" and "col2Value" properties
        data1.addRow([results[index].col1Value, results[index].col2Value]);
    });

    var chart = new google.visualization.PieChart(document.getElementById('donutchart'));
    chart.draw(data1, options);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM