要求是这样的。。是把列表的数据选中之后提交到另外一个action里面去。。这里选中的数据的ID也要传过去。所以再JS中要循环出所有已经选中的ID保存到一个数组中或List中作为参数传到另外一个action里面去。
function checkAll(checkAllBox){
  if(typeof(listForm)!="undefined" && listForm.checkRow){
    if(listForm.checkRow.length){
      for(var i=0;i<listForm.checkRow.length;i++){
        listForm.checkRow[i].checked=checkAllBox.checked;
      }
    }else{//只有一个
        listForm.checkRow.checked=checkAllBox.checked;
    }
  }
}
这里是选择多条或一条数。怎么才能得到已经选中的数据的value呢.但需要点击一个按钮才能通过URL传过去。

解决方案 »

  1.   

     把所有的checkbox   都用name属性标识
    通过name获取 所有的checkbox、var box=getelementbyname(“checkboxname”);
    var boxs[];
    for(var i=0;i<box.length;i++){
       
        if(box[i].checked=true){
           boxs[i]=box[i].value;
        }else{continue;}
      }你的需求 这种方式应该可以吧! 希望能帮到你
      

  2.   

    获取后 可以传到后台了、
    如果不行,你就拼接成 String   在传到action在  split()  就ok了
      

  3.   

    还有个简单的方法:
    在form中加入      <input type="checkbox" name="valueList" value="你要的ID" />
     
    在要提交到的Action里      String[] strValue=null;
          request = ServletActionContext.getRequest();
          strValue = request.getParameterValues("valueList"); 
    我是这么做的.
      

  4.   

    2楼的方法不行。。我就是要在页面用JS方法取出所有已经选中的,是列表。。就跟多条删除一样。。但是要在javascript中就取出选中的的value。然后存到另外一个数组,作为一个参数跟到URL后面;首先不能提交到本ACTION因为我是把取出来的数据作为条件到另外的action里面去查询了数据,然后返回到另外的页面。所以不能直接提交。。所以才想用这种方法。。
      

  5.   

    先把它组成一个String类型 然后传值到另一个页面 在另一页面的javascript中使用split()函数来分解还原本来的值
      

  6.   

    var checkboxes = document.getElementsByName('opreater');
                var select = "";
                for (var i = 0; i < checkboxes.length; i++) {
                    if (checkboxes[i].checked) {
                        select += "'" + checkboxes[i].value + "',";
                    }
                }
    就这样就可以了。。终于解决