日期:2014-05-18  浏览次数:20832 次

复选框传值问题,望高人解答
数据库表有N个字段,但是N个字段的值是类型是Varchar,然后varchar里面用逗号进行隔开。用hibernate读取整个字段的值后,将值用string接受,然后用split进行截取保存在string[]里面,因为字段较多,读出来后放到集合里面去。
然后通过将此集合绑定到request中去。现在页面上可以把整个集合的数据显示出来,用了struts的迭代标签。我这些值传到页面上去后,要进行判断,页面上主要是复选框,如果集合当中数组的值跟页面上的复选框的内容相对应,就打上勾,没有则反之。那么问题来了,如果更改了复选的对象后,就是取消或者增加了打勾的选项,那么我from提交后到action,那么我action里面该怎么去做判断传过来的值应该插入到表中的哪个字段里去呢????复选框比较多,估计不下200个。现在就是不知道怎么去判断进行插入到相对应的字段里面去了。是用id?还是值?小弟求救。。采用struts+hibernate

------解决方案--------------------
一个字段对应form中的一个String[],id不同。
------解决方案--------------------
在你的复选框后面加上一个隐藏的 <input type= "hidden " name=该复选框对应的表头> ,提交的时候根据提交的hidden表单的值来确定;
------解决方案--------------------
<td> <input type= "checkbox " name= "danwei " checked value= " <%=dw_id%> "> <%=dw_name%> </td>

这是从我的一个代码中复制过来的,是生成一系列的复选框

dw_id 就是每一个复选框的值, dw_name是在网页中显示的名称
出现的效果是:复选框 单位名称

提交表单后,下一个页面将使用

String []danwei=request.getParameterValues( "danwei ");

也就是 复选框的 name ,也就是得到了 由这些被选择了复选框的 id 组成 的一个数组。

希望对你有帮助。