高图表和表达式语言问题 - 预期标记“{”的语法错误
High charts and expression language issue - Syntax error on token "{" expected
我正在使用 highCharts 中的以下脚本,我正在尝试使用 jsp 和 EL 使提供给图表的数据动态化。但是,当我尝试使用 EL 替换数字字段时,出现错误 "Syntax error on token "{",. expected"
请找到下面的代码段
<script src="jquery.min.js"></script>
<script>
$(function() {
// Create the chart
$('#resourceutilization')
.highcharts(
{
chart : {
type : 'column'
},
credits : {
enabled : false
},
title : {
text : 'Resource Utilization'
},
subtitle : {
text : 'Project name : '
},
xAxis : {
type : 'category'
},
yAxis : {
title : {
text : 'Percentage Resource share'
}
},
legend : {
enabled : false
},
plotOptions : {
series : {
borderWidth : 0,
dataLabels : {
enabled : true,
format : '{point.y:.1f}%'
}
}
},
tooltip : {
headerFormat : '<span style="font-size:11px">{series.name}</span><br>',
pointFormat : '<span style="color:{point.color}">{point.name}</span>: <b>{point.y:.2f}%</b> of total<br/>'
},
series : [ {
name : 'Resources',
colorByPoint : true,
data : [ {
name : '${drillDownProject.resourceName[0]}',
y : ${drillDownProject.resourceContrib[0]}, // Issue here . This is a number
}, {
name : '${drillDownProject.resourceName[1]}',
y : ${drillDownProject.resourceContrib[1]}, // and here. This is a number
}, {
name : '',
y : 0,
}, {
name : '',
y : 0,
}, {
name : '',
y : 0,
} ],
} ],
//Drill down start
// Drill Down End
});
});
</script>
您可以尝试放入一个 JS 变量并检查,
<script type="text/javascript">
var resourceName = '${drillDownProject.resourceName[0]}';
var contribution = '${drillDownProject.resourceContrib[0]}';
....
{
name : resourceName,
y : contribution,
},
</script>
确保您使用的是 Servlet 2.4 or above
。检查您的 web.xml
的 servlet 版本。 BalusC already answered how-to-pass-an-el-variable-to-javascript. Also check this.
我正在使用 highCharts 中的以下脚本,我正在尝试使用 jsp 和 EL 使提供给图表的数据动态化。但是,当我尝试使用 EL 替换数字字段时,出现错误 "Syntax error on token "{",. expected"
请找到下面的代码段
<script src="jquery.min.js"></script>
<script>
$(function() {
// Create the chart
$('#resourceutilization')
.highcharts(
{
chart : {
type : 'column'
},
credits : {
enabled : false
},
title : {
text : 'Resource Utilization'
},
subtitle : {
text : 'Project name : '
},
xAxis : {
type : 'category'
},
yAxis : {
title : {
text : 'Percentage Resource share'
}
},
legend : {
enabled : false
},
plotOptions : {
series : {
borderWidth : 0,
dataLabels : {
enabled : true,
format : '{point.y:.1f}%'
}
}
},
tooltip : {
headerFormat : '<span style="font-size:11px">{series.name}</span><br>',
pointFormat : '<span style="color:{point.color}">{point.name}</span>: <b>{point.y:.2f}%</b> of total<br/>'
},
series : [ {
name : 'Resources',
colorByPoint : true,
data : [ {
name : '${drillDownProject.resourceName[0]}',
y : ${drillDownProject.resourceContrib[0]}, // Issue here . This is a number
}, {
name : '${drillDownProject.resourceName[1]}',
y : ${drillDownProject.resourceContrib[1]}, // and here. This is a number
}, {
name : '',
y : 0,
}, {
name : '',
y : 0,
}, {
name : '',
y : 0,
} ],
} ],
//Drill down start
// Drill Down End
});
});
</script>
您可以尝试放入一个 JS 变量并检查,
<script type="text/javascript">
var resourceName = '${drillDownProject.resourceName[0]}';
var contribution = '${drillDownProject.resourceContrib[0]}';
....
{
name : resourceName,
y : contribution,
},
</script>
确保您使用的是 Servlet 2.4 or above
。检查您的 web.xml
的 servlet 版本。 BalusC already answered how-to-pass-an-el-variable-to-javascript. Also check this.