关于struts2中checkbox勾选被处理又跳转回原页面的问题

需求:比如说我要注册一个用户首先有名字输入框,然后是一组checkbox选择框,当我点击注册之后发现名字已经存在了,我又要回到这个注册页面上,并且原来已经勾选的要选上(用struts2的标签)。

解决:对于这个问题网上也有解决方法,但是不好收集。我自己为了以后万一用到就总结一下吧。

跳转到这个注册页的时候checkbox是从数据库读出来的一个list并且该list里又嵌套了一个list作成页面形式大概就像这样:

性格栏:checkbox 活泼   checkbox 开朗

技能栏:checkbox Java   checkbox C语言

其中 性格栏,技能栏是动态打出来的属于外部list,其中的选项属于内部list

这是页面处理的代码

<s:iterator value="inforList" id="infor" >
       <tr>
        <td >
          <s:property value="#infor.name" />
        </td>
        <td >
        <s:iterator value="#infor.KinouList" id="inerlist">
        <input type="checkbox" name="ids" value="<s:property value="#inerlist.id" />" 
        <s:iterator value="ids" id="checkedid">
      <s:if test=" #inerlist.id ==#checkedid">
      checked="checked"
      </s:if>
        </s:iterator>  />
        <s:property value="#inerlist.name" /><br>
        </s:iterator>
        </td>
        </tr>
      </s:iterator>

对注册处理的action里有个Integer[] ids的属性(有get/set方法),如果注册失败则跳回原页面,对于inforList如何传递目前只能把它放到session里,如果大家有好的从jsp页面传的方法(嵌套的list哦),请留言,谢谢。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值