欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

代码总结:页面加载时给复选框默认勾选值,如何获取用户对多组checkbox的勾选情况

程序员文章站 2022-03-11 16:59:18
...
  • 需求:项目过程中,角色对模块的增删改查权限是以checkbox勾选的形式展现的,因此在新建角色时,要获取整组checkbox的勾选集合
  • 情况:第一次做权限,由于功能较少,只是八个增删改查的权限,分别对应一个复选框选中与否,因此最初我用八位01字符串作为权限的唯一标识符,这太2了,因为这导致后面每个增删按钮或请求页面都要判断这个标记位(遇到这种权限的问题,下次要依据RBAC的方式设计好表,用过滤器去实现,用户->角色->权限->资源)。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>获取多个复选框选中状态</title>
<script type="text/javascript" src="jquery/jquery-1.12.4.js"></script>
<script type="text/javascript" src="layer/layer.js"></script>
</head>
<script>
    $(function(){
        $("input[type='checkbox']").each(function(i,cx){
            if($(cx).val()== $("body").attr("data"))
                cx.checked = true;
        });
        function getChoose(){
            var choices = new Array();
            $("input[type='checkbox']").each(function(i,cx){
                if(cx.checked == true)
                    choices.push(1);
                else
                    choices.push(0);
            });
            return(choices.join(""));
        }
        $("input[type='button']").click(function(){
            layer.msg(getChoose(),{offset: ['180px', '0px']});
        });
    });
</script>
<body data="${param.city}">
<div>value1<input type="checkbox" value="v1"/></div>
<div>value2<input type="checkbox" value="v2"/></div>
<div>value3<input type="checkbox" value="v3"/></div>
<div>北京<input type="checkbox" value="bj"/></div>
<div>上海<input type="checkbox" value="sh"/></div>
<div>广州<input type="checkbox" value="gz"/></div>
<div>深圳<input type="checkbox" value="sz"/></div>
<input type="button" value="看你选了啥"/>
</body>
</html>

代码总结:页面加载时给复选框默认勾选值,如何获取用户对多组checkbox的勾选情况

相关标签: checkbox checked