在这种情况下,在Grails中打印xml字符串的最佳方法是什么:

Controller DashboardController.groovy:

package vs3 
 
//import vs3.Navbar 
 
class DashboardController { 
    def index() {        
        def sinistralidadePSChartData = new String()         
        sinistralidadePSChartData = '<chart labelStep="2" caption="Monthly Report" subCaption="Unique Visitors" yAxisName="Visitor Count" xAxisName="Date" showValues="0" showShadow="0" formatNumberScale="0" showLimits="0" canvasBorderAlpha="0" showBorder="0" divLineAlpha="30" anchorRadius="4" anchorBgColor="0377D0" anchorBorderColor="FFFFFF" anchorBorderThickness="1" anchorAlpha="90" showPlotBorder="1" plotBorderThickness="4" plotBorderColor="0377D0" plotFillColor="0377D0"  plotGradientColor="" plotFillAlpha="20" bgColor="FFFFFF" showAlternateHGridColor="0" numVDivLines="2" toolTipBgColor ="DEF1FF" toolTipBorderColor ="2C516D"><set label="1 March 2014" value="490" /><set label="2 March 2014" value="510" /><set label="3 March 2014" value="1546" /><set label="4 March 2014" value="1250" /><set label="5 March 2014" value="1000" /><set label="6 March 2014" value="540" /><set label="7 March 2014" value="560" /><set label="8 March 2014" value="580" /><set label="9 March 2014" value="600" /><set label="10 March 2014" value="620" /><set label="11 March 2014" value="640" /><set label="12 March 2014" value="660" /><set label="13 March 2014" value="680" /><set label="14 March 2014" value="700" /></chart>'         
        render(view:'/templates/dashboard',model:[sinistralidadePSChartData:sinistralidadePSChartData]) 
    } 
} 

View /模板:
<g:applyLayout name="page"> 
    <h3>Dashboard</h3> 
 
    <script type="text/javascript" src="/vs3/FusionCharts_XT_Evaluation/Charts/FusionCharts.js"></script>       
 
    <div id="chartdiv" align="left">Chart will load here</div> 
 
    <script type="text/javascript"> 
        var chart = new FusionCharts("Area2D", "ChartId","580", "400", "0", "0");            
        chart.setXMLData('${sinistralidadePSChartData}'); 
        chart.render("chartdiv"); 
    </script> 
 
    <g:link url="/vs3">Voltar</g:link> 
</g:applyLayout> 

但是它根本无法打印所有引号,而我所能得到的就是在我的页面中打印错误的xml / string,例如:
chart.setXMLData('&lt;chart labelStep=&quot;2&quot; caption=&quot;Monthly Report&quot; subCaption=&quot;Unique Visitors&quot; (...) 

我该如何处理这个问题?

请您参考如下方法:

如果需要原始未编码的输出,则可以执行以下操作:

chart.setXMLData('${raw(sinistralidadePSChartData)}'); 

See here for more options :-)


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!