Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用XML数据AJAX填充FusionCharts_Javascript_Xml_Ajax_Fusioncharts - Fatal编程技术网

Javascript 使用XML数据AJAX填充FusionCharts

Javascript 使用XML数据AJAX填充FusionCharts,javascript,xml,ajax,fusioncharts,Javascript,Xml,Ajax,Fusioncharts,嗨,我有一个js文件,它使用ajax从php脚本获取XML文档。XML文件形成数据以绘制融合图。我知道我可以得到XML数据,但FusionCharts不会绘制它。我非常感谢您的帮助,谢谢 (FusionCharts.js is included earlier in my script) if(XMLHttpRequestObject) { XMLHttpRequestObject.open("GET", "chart.php?job="+job, true); XMLHttpReque

嗨,我有一个js文件,它使用ajax从php脚本获取XML文档。XML文件形成数据以绘制融合图。我知道我可以得到XML数据,但FusionCharts不会绘制它。我非常感谢您的帮助,谢谢

(FusionCharts.js is included earlier in my script) 

if(XMLHttpRequestObject) {

XMLHttpRequestObject.open("GET", "chart.php?job="+job, true);

XMLHttpRequestObject.onreadystatechange = function() { 
if (XMLHttpRequestObject.readyState == 4 &&  XMLHttpRequestObject.status == 200) { 
var xdoc = XMLHttpRequestObject.responseXML;

     var chart1 = new FusionCharts("Pie3D.swf", "chart1Id", "400", "300", "0", "1"); 
 chart1.setDataXML(xdoc);
     chart1.render("chart1div");
chart.php生成此XML数据

<chart caption='ADI Chart Test ' >
  <set label='Driver' value='12.25' />
  <set label='Other Staff' value='223.21' />
  <set label='Equipment' value='0.00' />
  <set label='Additional Items' value='0.00' />
  <set label='Vehicle Fuel' value='0.00' />
  <set label='Accomodation' value='0.00' />
  <set label='Generator Fuel' value='0.00' />
</chart>

看起来您有一个“chart1div”,即使它(即Div)没有定义。 为此,需要定义一个Div

另外,尝试使用responseText代替responseXML。在这里,前者返回一个字符串,而后者返回一个XML文档对象

例如: var xdoc=XMLHttpRequestObject.responseText


:)

看起来您有一个“chart1div”,即使它(即Div)没有定义。 为此,需要定义一个Div

另外,尝试使用responseText代替responseXML。在这里,前者返回一个字符串,而后者返回一个XML文档对象

例如: var xdoc=XMLHttpRequestObject.responseText


:)。。。。。 然后尝试下面的代码

FusionCharts.RenderChart("/Charts/FCF_Pie3D.swf", "", $strXML, "ResourceVsCO1", "400", "200", false, false);

strXML是包含从chart返回的xml的字符串。ph

尝试从chart.php以字符串形式返回xml。。。。。
if(XMLHttpRequestObject) {
    XMLHttpRequestObject.open("GET", "chart.php?job="+job, true);
    XMLHttpRequestObject.onreadystatechange = function() {
        if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
            var xdoc = XMLHttpRequestObject.responseXML;
            var chart1 = new FusionCharts("Pie3D.swf", "chart1Id", "400", "300", "0", "1"); 
            chart1.setDataXML(xdoc);
            chart1.render("chart1div");
然后尝试下面的代码

FusionCharts.RenderChart("/Charts/FCF_Pie3D.swf", "", $strXML, "ResourceVsCO1", "400", "200", false, false);
strXML是包含chart.ph返回的xml的字符串

if(XMLHttpRequestObject) {
    XMLHttpRequestObject.open("GET", "chart.php?job="+job, true);
    XMLHttpRequestObject.onreadystatechange = function() {
        if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
            var xdoc = XMLHttpRequestObject.responseXML;
            var chart1 = new FusionCharts("Pie3D.swf", "chart1Id", "400", "300", "0", "1"); 
            chart1.setDataXML(xdoc);
            chart1.render("chart1div");
谢谢。。成功了

谢谢。。成功了