日期:2014-05-17  浏览次数:20942 次

dwr调用list返回undefined的问题,请高手指教一下
我用dwr做一个根据部门来查询部门下员工的操作,我在页面调用查询的方法得到一个list的集合,但是我在页面循环list,得到某一个属性的时候,它就提示undefined,请指点一下我哪个地方写错了..

dwr 配置
<create javascript="check" creator="spring">
     <param name="beanName" value="DWRslary"></param>
</create>
<convert converter="bean" match="com.lring.entity.Teacher" />


applicationContext-action.xml配置
<bean name="DWRslary" class="com.lring.util.DwrTest">
<property name="wageserviceimp"  ref="wagesService"></property>
</bean>


dwr调用的方法
public List<Teacher> find_TeacherBybumen(String name){
try {
List<Teacher>  list = wageserviceimp.find_TeacherBybumen(name);
return  list;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}

}

jsp页面调用dwr
    <script type="text/javascript" src="/informanage/dwr/engine.js"></script>
    <script type="text/javascript" src="/informanage/dwr/util.js"></script>
<script type="text/javascript" src="/informanage/dwr/interface/check.js"></script>
    <script type="text/javascript">
     function showTeacher(obj){
     check.find_TeacherBybumen(obj,longs);
     }
     function longs(dataList){
     for(var d=0;d<dataList.length;d++){
     alert("name:"+dataList[d].names);     }
     }
    </script>


当我调用names这个属性的时候就提示未定义?这是怎么回事呢?指点,指点》。。
------最佳解决方案--------------------
Lz应该是用spring管理对象的吧?如果是的话dwr配置里面再加一个<param>子标签<param name="location" value="applicationContext.xml"></param>。然后你原来的那个<param>标签中的name属性值为beanName,value改为spring配置文件中注入的bizBean的id值。这是我当初试过的,LZ可以试试
------其他解决方案--------------------
你把返回的list转换为json,然后在页面上处理,这样不就好了
------其他解决方案--------------------
在<convert converter="bean" match="com.lring.entity.Teacher"/>加上你要显示的属性试一下
<convert converter="bean" match="com.lring.entity.Teacher">
  <param name="include" value="names"></param>
</convert>

------其他解决方案--------------------
 function longs(dataList){
var str='';
  for(i in dataList){
        var obj=dataList[i];
        str+=obj.name;
     {
  看看这个能不能出来!!!
------其他解决方案--------------------
我感觉还是接数组比较好点 
------其他解决方案--------------------
你把返回的list转换为json,然后在页面上处理,这样不就好了
------其他解决方案--------------------
在线急等啊,怎么没有人回复呢?
------其他解决方案--------------------
后来我查了一下百度,也有人遇到这样的问题, 他们说是实体中的属性大写了,但是我都是小写的,同样也报未定义这个问题?有没有谁遇到过?讲解一下..
------其他解决方案--------------------
引用:
在<convert converter="bean" match="com.lring.entity.Teacher"/>加上你要显示的属性试一下