我在list页面有复选框  name =“id ”  点击提交按钮   在Struts的action中用String[] a=request.getParametervalues("id")取得值后,然后通过return new ActionForward()返回原来的list页面  可是如果再选复选框后  再点提交 数组a的值会累加 如第一次提交值为    a={1}   第二次提交第一次提交的那一条记录  a={1,1}  第三次 a={1,1,1}   请问是怎么回事 啊  难道getParametervalues的值会累加??

解决方案 »

  1.   

    估计是你程序没写好吧
    要不累加你可以在forwad前写个方法把a[]里面的值清空
    主要是看你的需求的
      

  2.   

    public ActionForward insert(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) throws BusinessException {
    String[] ids=null;
     ids = request.getParameterValues("checkboxid");
    try {
    for(int i = 0; i < ids.length; i++){
    String id=ids[i];
     System.out.println("+++++++++++++"+id);
    }

    } catch (Exception e) {
    throw new BusinessException("该记录已存在!");
    }
    return new ActionForward("/aaa.do?method=list");
    }
      

  3.   

    第四句ids = request.getParameterValues("checkboxid");
    和这个ids是全局的有没有关系!