在Action页面,写了个判断,判断从页面传过来的值为day还是Month:
if("day".equals(date)){
List<Monitordetail> list=traffic.CountIp();
String trafficfile="<?xml version='1.0' encoding='GB2312' standalone='no'?><chart palette='2'>";
for (int j = 0; j < list.size(); j++) {
trafficfile+="<set label='"+String.valueOf(list.get(j).getTypename())+"' value='"+String.valueOf(list.get(j).getIpCount())+"' />";
}
trafficfile+="</chart>";
session.setAttribute("trafficfile", trafficfile);
System.out.println(trafficfile+"每日");
}else if("month".equals(date)){
List<Monitordetail> list=traffic.CountIpMonth();
String trafficfile="<?xml version='1.0' encoding='GB2312' standalone='no'?><chart palette='2'>";
for (int j = 0; j < list.size(); j++) {
trafficfile+="<set label='"+String.valueOf(list.get(j).getTypename())+"' value='"+String.valueOf(list.get(j).getIpCount())+"' />";
}
trafficfile+="</chart>";
session.setAttribute("trafficfile", trafficfile);
System.out.println(trafficfile+"每月");
}
在jsp页面是用Ajax传值过来的,我在控制台打印出来了System.out.println(trafficfile+"每日");的值,但在浏览器不显示报表图,然后我再刷新页面,出现报表图,再选择月份的查询,还是出现的每日的报表数据,再点击刷新一下,才出现月份的报表。
就是说我在浏览器显示的,每次都是上一次执行的数据内容,有大神用过FusionCharts,遇到过这样子的问题吗?
------解决方案--------------------
调试了吗 ?感觉做项目的时候也遇到过这个问题,第一次值没有传进去,所以显示不了,第二次值传进去了,就显示了, 可能的问题是在用Ajax得到值的时候,控件获取值是有问题的