原来看到actionForm里可以放一个Map属性的方式,可以满足Jsp里有多个不固定html:text的情况。
你查一查资料,替换为你的radio应该可以的。
我通常的做法是用javascript,每次点击这些radio,都会调用一个function,把选择的结果写入一个hidden隐藏域,比如点了第一个radio,Hidden里就加入radioA!Value1,点了第二组radio再加入就变成radioA!Value1$radioB!Value1,如果变化了第一组的选择,就要解析以下Hidden中的内容进行修改,就变成radioA!Value2$radioB!Value1。
如此,可以把多组radio的结果都记录在这个hidden中,actionForm里只需要一个属性与hidden对应即可。
数据提交到action后,用String的split方法切分它们,先分出每组用$符号,再对每组用!符号切分,即可得到不同组名的值是多少了。
现在我的系统很多地方都是用这种方式,非常有效。如果你对javascript还算熟悉,这很简单就可以实现了。
不然就看看Map的那种方式。

解决方案 »

  1.   

    楼上的方法是不错,我也有一个方法介绍给你,适用情况:由session里的一个变量--->通常是arraylist
    ,在jsp显示的时候,对应出多个radio这样的复选框,选择后怎么提交呢,可以不用actionForm.
    jsp:
    <form action="你的action" methed="post"/>
    ......
           <input type="radio" name="aaa" value="你设定标示这个被选中的值"....>
           <input type="radio" name="aaa" value="你设定标示这个被选中的值"....>
           <input type="radio" name="aaa" value="你设定标示这个被选中的值"....>
    ......
    </form>
    action:
    String[] selected=httpServletRequest.getParameterValues("aaa");
    然后:
    for(int i=0;i<seleced.length;++i)
    {
       aaa1=selected[i]
    }
    这样就得到复选框的值了
      

  2.   

    楼上的你好,实在太感谢了!
    但是我对javascript不是太熟悉
    又没有你刚才说的这样做的一段源码阿,能否贴出来让我看看这个function怎么写的
    谢谢!
      

  3.   

    也谢谢 bp69() 
    但是你这样写只有一组radio的情况阿,因为只有一个name。
    但是我的页面有很多组的radio,并且不固定数量
    好像用同一个name不行哦?
      

  4.   

    那楼主还是学习以下javascript吧,因为逻辑关系javascript和java很像,主要是语法。
    比如js里。
    var hiddenObj = document.all("此处填一个hidden的id").value;
    以上可以得到一个hidden域的值。
    var datas=hiddenObj.split("$");
    可以用$符号切分值。
    for(var i=0;i<datas.length;i++){
        var eachRadio = datas[i];
    }
    循环每一组radio存在hidden域中的内容。
    你可以把eachRadio再切分,比如var radioDatas = datas[i].split("!");
    现在radioDatas[0]就是前边的radioA,
    radioDatas[1]就是Value1。
    你需要做的是判断,哪些存在了,是不是要修改值,哪些不存在就添加进去。还要写一个function,比如
    function insertValue(name, value){}
    要做的就是把一个radio的名称和选择的值插入这个Hidden。
    然后在动态生成radio标记的时候,每个radio的onClick=insertValue("radio的名称","值")。最后在action里得到这个Hidden的值后,用Java的方法取出每一组的内容就可以了。
    说的不是很详细,最主要的是你要会用javascript。呵呵,虽然不用精通,不过做web开发的程序员应该要会一点的。
      

  5.   

    有几组的话,就用几个name,不固定数量是没关系的,都能取得到的