Html 如何使用setXMLData在jsp中呈现fusionchart图?

Html 如何使用setXMLData在jsp中呈现fusionchart图?,html,jsp,fusioncharts,Html,Jsp,Fusioncharts,我目前正在一个小型内部应用程序上开发FusionChartsFree,我有一个类似这样的小html代码 <html> <head> <title>My First chart using FusionCharts XT</title> <script type="text/javascript" src="FusionCharts.js"></script> </head> <body> &l

我目前正在一个小型内部应用程序上开发FusionChartsFree,我有一个类似这样的小html代码

<html>
<head>
<title>My First chart using FusionCharts XT</title>
<script type="text/javascript" src="FusionCharts.js"></script>
</head>
<body>
    <div id="chartContainer">FusionCharts XT will load here!</div>
    <script type="text/javascript">         
      var myChart = new FusionCharts( "Line.swf", "myChartId", "400", "300");
      var strXML = "<chart caption='Critical' xAxisName='month' yAxisName='Count' yAxisMinValue ='40' showValues= '0'><set label = 'month1' value='55'/><set label = 'month2' value='55'/><set label = 'month3' value='55'/><set label = 'month4' value='55'/></chart>" ; 
      myChart.setXMLData(strXML);
       myChart.render("chartContainer");
   </script>
</body>
</html>

我的第一张使用FusionCharts XT的图表
FusionCharts XT将在此处加载!
var myChart=新的FusionCharts(“Line.swf”、“myChartId”、“400”、“300”);
var strXML=“”;
setXMLData(strXML);
myChart.render(“chartContainer”);
上面的代码可以完美地工作并呈现一个图形。现在,我正尝试使用JSP做同样的事情,如下所示:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Graphs</title>
<script type="text/javascript" src="FusionCharts.js"></script>
</head>
<body>
<%
String data="<chart caption='Minor' xAxisName='month' yAxisName='Count' yAxisMinValue ='66500' showValues= '0'>"+"\n"+"<set label = 'month1' value='66560'/>"+"\n"+"<set label = 'month2' value='66560'/>"+"\n"+"<set label = 'month3' value='66647'/>"+"\n"+"<set label = 'month4' value='66631'/>"+"\n"+"</chart>";
System.out.println(data);
%>  
<div id="chartContainer1" align="left" style="margin-top: 22px; padding-top: 310px;">blocker data</div>
            <script>
            var blocker = new FusionCharts("Line.swf", "myChartId1", "400", "300");
            var strXML1="<%=data%>";
            blocker.setXMLData(strXML1);
            blocker.render("chartContainer1");
            </script>

</body>
</html>

图
封锁数据
var blocker=新的FusionCharts(“Line.swf”、“myChartId1”、“400”、“300”);
var strXML1=“”;
blocker.setXMLData(strXML1);
阻挡者。渲染(“chartContainer1”);
当我动态生成“数据”字符串时,问题来了,我没有得到任何输出。请帮助

问题是JSP页面的XML中有多余的“\n”。删除“\n”并再次检查,它将正常工作


当您使用XMLData()函数传递数据时,FusionCharts需要一个没有任何换行符(明确包含在XML中)的XML数据字符串。

System.out.println(数据)的输出是什么?实际上我犯了一个小错误,当我纠正它时,图形被渲染了。但是,当我动态生成“data”变量时,问题就出现了。因此,您是否可以粘贴
数据
变量内容?是的。只要字符串“data”不是动态生成的,上述JSP代码就可以工作。在这种情况下,请尝试动态生成
数据
字符串,并将其打印出来,这样就可以调试这种情况。好的,谢谢!我会试试的。请接受这个答案,这样也能帮助别人:)