Jsp之复选框的使用

1、全选复选框

getElementsByName返回的是数组

<script type="text/JavaScript">

 function selectAll(flag){
    var ids = document.getElementsByName("ids");
    for(var i=0;i<ids.length;i++){
       ids[i].checked=flag;
    }
 }
</script>

checkbox的name值要与js对应

<input type="checkbox" name="ids" value=<%=map.get("id")%> />

调用:

用另一个checkbox调用

<input type="checkbox" name="checkall" value=""
                    onclick="javascript:selectAll(this.checked);">

用链接或button调用,并实现全不选

<a href="#" onclick="javascript:selectAll(true);">全选</a>
<input type="button" onclick="javascript:selectAll(false);" value="取消全选">

2、获取所选的框的个数

    function getSelectCount() {
        var count = 0;
        var ids = document.getElementsByName("ids");
        for ( var i = 0; i < ids.length; i++) {
            if (ids[i].checked) {
                count++;
            }
        }
        return count;
    }

3、提交所选框代表的各个值(即value属性)到action中

要求各个checkbox的name是ids,且在一个name="form1"的表单中

    function del() {
    if(getSelectCount()<1){
        alert("至少要选中一个选项!!");}
        else {
             var th = document.form1;
                th.action="<%=path%>/servlet/ProductEdit?action=del";
                th.submit();
        }
        
    }

在dopost中获取ids数组

String[] id=request.getParameterValues("ids"); 

Done!

原文地址:https://www.cnblogs.com/xingyyy/p/3486622.html