2012-04-06 11 views
3

Ich habe den folgenden HTML-Code. Es funktioniert.Fusion Charts setCurrentRenderer ('javascript') Ausgabe

<html> 
    <head>  
    <title>My First chart using FusionCharts - Using pure JavaScript</title>  

    <script type="text/javascript" src="http://www.fusioncharts.com/lib/jquery/jquery-1.6.2.min.js"></script> 
    <script language="JavaScript" src="http://www.fusioncharts.com/lib/js/FusionCharts.js"></script> 
    <script language="JavaScript" src="http://www.fusioncharts.com/lib/js/FusionCharts.HC.js"></script> 
    <script language="JavaScript" src="http://www.fusioncharts.com/lib/js/FusionCharts.HC.Charts.js"></script> 
    <script language="JavaScript" src="http://www.fusioncharts.com/lib/js/jquery.min.js"></script> 

    </head> 
    <body>  
    <div id="chartContainer">FusionCharts will load here!</div>   
    <script type="text/javascript"> 

    //FusionCharts.setCurrentRenderer('javascript'); 
      var chartObj = new FusionCharts({ 
      swfUrl: "http://www.fusioncharts.com/demos/gallery/Charts/Column2D.swf", 
      width: "500", 
      height: "300", 
      id: 'sampleChart', 
      dataSource: "http://www.fusioncharts.com/demos/gallery/Data/Col2D1.xml", 
      dataFormat: FusionChartsDataFormats.XMLURL,   
      renderAt: 'chartContainer' 
     }).render(); 

    </script>   
    </body> 
</html> 

Wenn ich die setCurrentRenderer javascripde Modus. Es gibt mir "keine Daten zur Anzeige".

EDIT: Beispielquelle - http://www.fusioncharts.com/demos/gallery/column-and-bar/chart.asp?id=column2d_1

+1

Warum Sie jQuery importieren ** ** zweimal ?? – Pointy

+0

Ich habe dieses Beispiel von ihrer Website kopieren. Ich habe einige Includes gelöscht, weil ich sie nicht verwende. Das ist übrig, aber wenn Sie es löschen, gibt es Ihnen die gleichen Ergebnisse - ohne den Javascript-Modus arbeiten und nicht damit arbeiten. – gotqn

Antwort

4

Laden von Daten in JavaScript von den Fusion Website Ergebnisse in Cross-Domain-Fehler. Es ist Sicherheit, die vom Browser selbst eingebaut wird.

XMLHttpRequest cannot load http://www.fusioncharts.com/demos/gallery/Data/Col2D1.xml. Origin http://localhost is not allowed by Access-Control-Allow-Origin.

Versuchen Sie, die JavaScript-Dateien, Flash-Dateien und die XML-Daten auf Ihrem eigenen lokalen Server-Hosting, und es sollte perfekt funktionieren.

+0

Ich habe das Laden "HardCoding" der XML-Daten in meinem Java-Script-Code behoben. – gotqn

0

Ich habe unten Beispiel mit Javascript-Rendering verwendet:

<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Multi Series Bar 2D Chart</title> 
    <link href="../assets/ui/css/style.css" rel="stylesheet" type="text/css" /> 
    <link href="../assets/prettify/prettify.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript" src="../../Charts/jquery.min.js"></script> 
    <script type="text/javascript" src="../../Charts/FusionCharts.js"></script> 
    <script type="text/javascript" src="../assets/prettify/prettify.js"></script> 
    <script type="text/javascript" src="../assets/ui/js/json2.js"></script> 
    <script type="text/javascript" src="../assets/ui/js/lib.js" ></script> 
    <script type="text/javascript" src="../assets/ui/js/DD_belatedPNG_0.0.8a-min.js"></script>       
    <script> 
     /* select the element name, css selector, background etc */ 
     DD_belatedPNG.fix('img'); 

     /* string argument can be any CSS selector */ 
    </script> 
     <p>&nbsp;</p> 
     <P align="center"></P> 
    <![endif]--> 
</head> 
<body> 
<h3 class="chart-title">Multi Series Bar 2D Chart</h3> 
<p>&nbsp;</p> 
<script type="text/javascript" src="../Data/String/js/MSBar3D1.js" ></script> 

    <div id="chartdiv" align="center">Chart will load here</div> 
    <script type="text/javascript"> 
     alert(GALLERY_RENDERER); 
     FusionCharts.setCurrentRenderer("javascript"); 
     var chart = new FusionCharts("MSBar3D.swf", "ChartId", "560", "400", "0", "0"); 
     chart.setXMLData(dataString);   
     chart.render("chartdiv"); 
    </script> 
     <p>&nbsp;</p> 
     <p align="center">3D Bar chart showing sales comparison of 5 countries across 3 years. Click on a legend item to show/hide the data series.</p> 


und es funktioniert mit Java-Script fein dieses Beispiel

hilft
0

Kreuz rendering..i zu hoffen Domain-Probleme können durch die Einführung von CORS gelöst werden - Cross-Source-Ressourcen-Sharing. Stellen Sie sicher, dass der Server , die die Daten liefert zusätzliche http-Header in der Antwort sendet:

Access-Control-Allow-Origin: http://the_url_that_hosts_the_page 

Access-Control-Allow-Headers: If-Modified-Since