javascript - Wordpress 中的谷歌图表

标签 javascript wordpress google-visualization

我想在 Wordpress 页面中显示 Google Graph。

我学习了 here Wordpress 似乎可以使用 Javascript。

所以我创建了一个包含基本代码的页面(这是 GCharts 的示例)。我的页面看起来像:

    <!--Load the AJAX API-->
<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 id="chart_div"></div>

不幸的是,我的网站上没有显示任何内容。

有人知道发生了什么事吗?

谢谢

编辑:

我发现 Wordpress 添加了 <[CDATA[ 标签。在我的代码中,此标记可能被“]”字符破坏,这会导致问题。

这是 Firebug 信息:

syntax error


google.setOnLoadCallback(drawChart);</p>

?page_id=22 (line 88, col 43)

不在我的代码中!!

我注意到,当我在页面中点击“更新”时,代码变为:

<script type="text/javascript">// <![CDATA[
          // 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>

最佳答案

解决方案是......不要在页面的 javascript 代码中使用空行

关于javascript - Wordpress 中的谷歌图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9682278/

相关文章:

php - 根据 Woocommerce 中允许的时间范围禁用结账

google-visualization - 从谷歌可视化表中的单元格值更改行颜色

c# - 使用 JQuery 循环动态地将行添加到 Google Charts

mysql - Wordpress 限制查询结果

wordpress - 获取当前菜单项的菜单名称或位置

angularjs - 谷歌图表使用 Angular 指令时以逗号分隔

javascript - 在 angularJS 中使用 {{ }} 查看输出 Angular 变量名称中显示的加载时间

javascript - 如何从回调javascript导出结果

javascript - 使用 jquery 加载 html 元素后访问它

javascript - 将表单输入字段中的占位符文本与中间的输入字符串分开