可以把两个List组成一个MAP,这样可以体现两者之间的关系.

解决方案 »

  1.   

    楼主用这个<s:doubleselect>可以吗?
    具体用法看struts文档:http://struts.apache.org/2.0.14/docs/doubleselect.html
      

  2.   

    我要的不是这种效果!两个List的值是一一对应的.
      

  3.   

    看你这标签是STRITS2.0的吧,我也在学习STRUTS2.0
    友情UP
      

  4.   


    既然这样你可以两个list 嵌套遍历用s:if标签判断啊
    比如 list1里有 aa,bb两项,list2有cc dd,
    aa对应cc,
    现在通过这个逻辑关系输出list1和list2中对应的dd,于是如下:
    <s:iterator value="list1">
    //遍历非关联的项
    <s:property value='aa'/>
    //对于你要关联两个list项 嵌套遍历用s:if判断,就等于在后台程序中的两个for循环嵌套的逻辑
    <s:iterator value="list2">
    <s:if test="cc==aa"><s:property value='dd'/></s:if>
    //或者aa,cc都为字符串可以这样写
    <s:if test='cc.equals("aa")'><s:property value='dd'/></s:if>
    </s:iterator>
    </s:iterator>
      

  5.   

    可能是我的表达能力比较差吧.这里的两个List的值不是用来比较的.而是一个List的值(Integer)如果大于0的话另一个List的里面的数据显示一种状态(比如超链接);如果小于0,则显示为单选按钮.现在的问题是要确定List中元素的位置,这样才好进行迭代比较吧!
      

  6.   

    假设有两个List
    List1  List2<s:iterator value="List1" value="first">
       
       <s:iterator value="List2" id="second">
             <s:if test="#first.id>0">
             //放超链接
     </s:if>
             <s:else>
                    //放单选按钮
     </s:else>
      </s:iterator>
    </s:iterator>
      

  7.   


    上面发出错了
    <s:iterator   value= "List1 "   id= "first "> 
          
          <s:iterator   value= "List2 "   id= "second "> 
                      <s:if   test= "#first.id> 0 "> 
                    //放超链接 
      </s:if> 
                      <s:else> 
                                    //放单选按钮 
      </s:else> 
        </s:iterator> 
    </s:iterator> 
      

  8.   

    <tr class="row">
    <s:iterator value="list1"  status="t">
    <div>
    <s:property value="list1显示属性名" />
    </div><div>
    <s:iterator value="list2" >
    <s:if test="list1[#t.index].typeNum==typeNum">   //关键地方,typeNum做比较用的属性名
    <a href="/url.do?变量名(属性名)=<s:property value="值"/>"> 
    <s:property value="list2显示属性名" />
    </s:if>
    </a>
    <br />
    </s:iterator>
    </div></s:iterator>
    </tr>