你把casetypeAll 定义为action的属性
生成对应的set,get方法
这样你在页面上 直接这样就可以去到值
比如 查询的casetypeAll 中,有两个字段对应的数据分别为aa和bb
<s:select id="casetypeAllid" 
name="自定义" list="casetypeAll"
        listKey="aa" listValue="bb"
headerKey="" theme="simple" headerValue="" ></s:select>

解决方案 »

  1.   


    老兄你的 listKey="aa" listValue="bb" 
    这个怎么能这样呢,我的下拉框要显示的是从数据库中查询出来的集合的typename字段啊,按你的方法,我的下拉框是空的啊,怎么整啊?
      

  2.   


    <s:select name="tcase.casetype" id="casetype" label="案件类型" labelposition="top" 
    list="#request.casetypeAll"/> 不明白你的list="#request.casetypeAll.typename"是什么意思,他说的很清楚,list要是个集合
     The requested list key '#request.casetypeAll.typename' could not be resolved as a collection
      

  3.   

    老兄像上面你那样写还是没值的啊,虽然有下拉框(不报错了),但是是空的啊,下拉框是空的啊,这里怎么写?listKey="aa" listValue="bb",这两个肯定是错的啊
      

  4.   

    把数据库的返回值放在session中,在页面输出session
      

  5.   

    我也遇到与楼主同样的问题。原因是楼主你传到JSP页面的是List,而<s:select>要求的是Map。传一个Map数据过去,并且<s:select>中的listKey和listValue分别设置为“key”和“value”即可。
      

  6.   

    你把casetypeAll 定义为action的属性 (private list casetypeAll;),生成对应的set,get方法 
    建一个类vo, 包含aa和bb两个属性,生成对应的set,get方法 ;
    在循环里把new vo对象放到 casetypeAll (casetypeAll.add(new vo));
    <s:select id="casetypeAllid" 
    name="自定义" list="casetypeAll" 
            listKey="aa" listValue="bb" 
    headerKey="" theme="simple" headerValue="" > </s:select> 以上是标准做法, 希望可以帮到你!!