2015-04-19 23 views
1

我有一个谷歌饼图,它正确显示在我的网页上。 现在我想克隆我的网站的另一个div中的图表。它unfornuately抛出一个XMLHttpRequest错误:clonig谷歌饼图与jQuery的触发器XMLHttpRequest错误

的XMLHttpRequest无法加载 https://www.google.com/uds/api/visualization/1.0/dca88b1ff7033fac80178eb526cb263e/ui+en.css。 请求的 资源上没有“Access-Control-Allow-Origin”标题。因此,'http://foodmeup.dev'因此不允许 访问。

我该如何克服这个问题?

我的观点:

<div id="piechart" style="height: 220px;"></div> 
    <div id="profile_completion_graph" class="responsive"> 
//the div in which I want to clone the graph 
    </div> 

<script type="text/javascript"> 
     function drawChart() { 
      var data = google.visualization.arrayToDataTable([ 
       ['Nom', 'Valeur'], 
       ["Profil rempli à ", {{ completeness }}], 
       ['Manque', {{ 100 - completeness }}] 
      ]); 

      var options = { 
       backgroundColor: { fill:'transparent'}, 
       pieSliceBorderColor : 'transparent', 
       pieHole: 0.8, 
       legend: {position: 'top'}, 
       width: 220, 
       height: 220, 
       tooltip: {trigger: 'none'}, 
       pieStartAngle: -90, 
       pieSliceTextStyle :{fontsize : 16, color: 'transparent'}, 
       slices: { 
        0: { color: '#09b4ff'}, 
        1: { color: '#444'} 
       }, 
       chartArea : {width: '90%', height: '90%'} 
      }; 

      var chart = new google.visualization.PieChart(document.getElementById('piechart')); 

      chart.draw(data, options); 
     } 

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


</script> 

<script> 
    $(function(){ 
     var $graphs = $('#chart_picture').clone(); 
     $('#profile_completion_graph').eq(0).html($graphs); 
    }); 
</script> 

回答

0

变化drawChart函数接受DOM元素作为参数

function drawChart(elem){ 
    .... 
    var chart = new google.visualization.PieChart(elem); 

} 

然后调用它两次。

+0

克隆它呢?这是不可能的?我在这个克隆的div中有其他元素,我想避免重复代码,并且图表充满了不同的控制器操作数据 –