javascrpt方法传递参数转义

今天在用FusionCharts作报表时,遇到这样一个问题:
var chart = new FusionCharts("${ctx}/common/fusioncharts/Column3D.swf", "ChartId", "800", "400");	
                						 chart.addParam("wmode","transparent");

chart.setDataXML("<chart><set label='项目信息'  value='20' link='javascript:showInfo("a")'/> </chart>");

chart.render("chartdiv1");


需要点击图中每个柱状图显示其详细信息,showInfo("a") 当这样传递参数时报错;当showInfo(a) 不加双引号时,点击每个柱状图 报a未定义。
最后得出结论showInfo方法传递参数时 加入双引号与外面的双引号相冲突了。
需要以下这样改:
var chart = new FusionCharts("${ctx}/common/fusioncharts/Column3D.swf", "ChartId", "800", "400");	
						   chart.addParam("wmode","transparent");

chart.setDataXML("<chart><set label='项目信息'  value='20' link='javascript:showInfo(\"a\")'/> </chart>");

chart.render("chartdiv1");


加上转义字符即可,js中\"可以把"转义。


下面列出javascript常用的转义字符
\'
单引号

\"
双引号

\&
和号

\\
反斜杠

\n
换行符

\r
回车符

\t
制表符

\b
退格符

\f
换页符


如果在java后台拼凑出FusionCharts报表的xml数据时,这时要遵循xml的转义字符
如:
&lt; < 小于号
&gt; > 大于号
&amp; & 和
&apos; ' 单引号
&quot; " 双引号

你可能感兴趣的:(java)