1.背景 “<%=value%>” 和 “${value}”
写一个html报表进行打印,动态的给报表赋值,结果页面一直无法取到值。
2.html页面截图
3.html前台取值
4.后台设值
5.原因分析
前台的${wgbtHrbtmxList},C:foreach中判断的是java文件中的setAttribute,request.setAttribute("wgbtHrbtmxList", wgbtHrbtmxList);
而不是前台jsp页面中的ArrayList<WgbtHrbtmx> wgbtHrbtmxList = (ArrayList<WgbtHrbtmx>) request.getAttribute("wgbtHrbtmxList");
中的wgbtHrbtmxList ,当前台中的wgbtHrbtmxList 改变时,会导致c:foreach中的值取不到,会没有值,所以里面的循环也不执行,搞混了<%=value%> 和 ${value},注意两者的区别。