struts2中<s:doubleselect/>标签的使用心得<原创>

  两个Bean:Category(父框中显示)、SubCategory(联动子框中显示)。

  Action中:

        。

        。

        。

      private Map<Long, List<SubCategory>> subCategoryMap = new HashMap<Long, List<SubCategory>>();//全局变量getter,setter方法自己写

        。

        。

        //方法中关键代码如下

      List<Category> categoryList = categoryService.findAllCategory();

      for(int i=0;i<categoryList.size();i++){
        List<SubCategory> templist = new ArrayList<SubCategory>();
        templist = subCategoryService.findByCategoryId(categoryList.get(i).getId());
        subCategoryMap.put(categoryList.get(i).getId(),templist);
      }

   jsp页面显示:

    <s:doubleselect theme="simple" tooltip="所有分类" name="event.category.id"
      list="categoryList" listKey="id" listValue="categoryName"
      doubleList="subCategoryMap[top.id]" doubleName="event.subCategory.id"
      doubleListKey="id" doubleListValue="name" />

    页面关键:通过doubleList属性,将第一个框list中的id和第二个框中的Map中的key联系起来,top值第一个框中的整个对象

    特别注意:<s:doubleselect/>标签必须放在<s:form>中,放在普通<form>中会出错,而且s:form必须指定name属性

    另外,希望页面美观的话,希望s:doubleselect标签和左边的字对齐,则指定s:doubleselect属性theme="simple"

       希望两个select排成一行(貌似默认是上下行的),则在页面顶部声明css:

        <style type="text/css">
         .doubleselect br{
          display: none;
         }
        </style>

       然后在<s:form>外面套一个< div class="doubleselect">就可以了!

转载于:https://www.cnblogs.com/winkey4986/archive/2012/09/06/2673189.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值