今天在调式一个程序,使用了Ajax进行后台取值并显示在页面上。但是调了半天,后台的返回数据始终无法传到页面上。总结了一下问题,供大家借鉴。
首先,我定义的Ajax的返回值是json,那么返回的数据一定应该可以转换为Json串。
我原来的定义是:
public class AllProjectStaticInfo
{
private List<String> categories;
public List<String> getcategories()
{
return categories;
}
public void setcategories(List<String> curcategories)
{
categories=curcategories;
}
}
然后在Controller里,使用上述类的对象做为传给Ajax的返回值。
请注意,实际上这里categories是private的,所以Ajax返回值的时候,在页面上是拿不到categories值的。悲催的是,也没啥调式错误。就是对象里面没有值。
修改上述类为:
public class AllProjectStaticInfo
{
publicList<String> categories;
}
再 传给Ajax作为返回值,数据就取到了。