8

Java EE アプリケーションに Google Visualization API のチャートを含めたいと考えています。しかし、私が何をしても、アプリケーションは API を認識しません。私は以前にこのように使用していたので、何が間違っているのかわかりません。誰かが私のコードを見て、私が間違っていることを教えてもらえますか? ありがとう!

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>    
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<link type="text/css" href="LOCATION/STYLENAME.css" rel="stylesheet"/>

<script src="/tis/javascript/common/jquery.inlinemenu.js" type="text/javascript"></script>

<script type="text/javascript" src="https://www.google.com/jsapi"></script>
 <script type="text/javascript">

      // Load the Visualization API and the piechart package.
      google.load('visualization', '1.0', {'packages':['corechart']});

// Set a callback to run when the Google Visualization API is loaded.
      google.setOnLoadCallback(drawChart);

      // Callback that creates and populates a data table,
      // instantiates the pie chart, passes in the data and
      // draws it.
      function drawChart() {

        // Create the data table.
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'Topping');
        data.addColumn('number', 'Slices');
        data.addRows([
          ['Mushrooms', 3],
          ['Onions', 1],
          ['Olives', 1],
          ['Zucchini', 1],
          ['Pepperoni', 2]
        ]);

        // Set chart options
        var options = {'title':'How Much Pizza I Ate Last Night',
                       'width':400,
                       'height':300};

        // Instantiate and draw our chart, passing in some options.
        var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
        chart.draw(data, options);
      }
    </script>

<!--Div that will hold the pie chart-->
    <div id="chart_div"></div>

エラーは次のとおりです。

  1. ReferenceError: Google が定義されていません
  2. メソッド「setOnLoadCallback」には下線が引かれ、次のように表示されます: 未解決の関数またはメソッド「setOnLadCallback」
4

2 に答える 2

2

ブラウザのすべてのアドオン、特に「Disconnect」というアドオンを無効にしてみませんか。同じ問題に遭遇し、アドオンを削除した後、非常にうまく機能しました。一部のアドオンは、Google API ライブラリに干渉する可能性があります。

于 2015-07-12T07:09:08.663 に答える
1

次のコード行を変更してみてください。

google.load('visualization', '1', {packages: ['corechart']});

これに:

google.load('visualization', '1', {packages: ['corechart'], callback : drawChart});
于 2015-07-10T15:55:06.533 に答える