layui 單個獲取複選框的狀態或值,監聽checkbox複選

此文章爲單個獲取。

批量獲取示例在https://blog.csdn.net/wybshyy/article/details/106693049

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TemplateEdit.aspx.cs" Inherits="MyProject.YuanGongPingJia.TemplateEdit" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <link href="/JS/layui/css/layui.css" rel="stylesheet" />
    <script src="/JS/jquery-3.4.1.js"></script>
    <script src="/JS/layui/layui.js"></script>
</head>
<body>
    <form class="layui-form" action="">


        <div class="layui-form-item" style="margin-top: 20px;">
            <label class="layui-form-label">
                模板名稱
            </label>
            <div class="layui-input-block">
                <input type="text" id="TemplateName" name="title" required lay-verify="required" placeholder="請輸入模板名稱" autocomplete="off" class="layui-input" style="width: 200px;" />
            </div>
        </div>
        <blockquote class="layui-elem-quote layui-text">
            題目總分請勾選共105分,已勾選<span id="allfen">0</span>分
        </blockquote>
        <div class="layui-form-item" pane="">
            <label class="layui-form-label">模板題目</label>
            <div class="layui-input-block">
                <%=sbSubjects.ToString() %>
                <input type="checkbox" id="2" name="Subjects" value="10" lay-filter="subjects" lay-skin="primary" title="(10分)-是否愛公司" /></br>
                <input type="checkbox" id="3" name="Subjects" value="11" lay-filter="subjects" lay-skin="primary" title="(10分)-是否愛公司" /></br>
            </div>
        </div>
        <%--<div class="layui-form-item">
            <div class="layui-input-block">
                <button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
                <button type="reset" class="layui-btn layui-btn-primary" onclick="toSubmit()">重置</button>
            </div>
        </div>--%>
        <input id="key" type="hidden" value="<%=templatesModel!=null?templatesModel.Id:0 %>" />
        <input id="hdsubs" type="hidden" value="<%=templatesModel!=null?templatesModel.TempSubjects:"," %>" />
    </form>

    <script>
        //Demo
        layui.use('form', function () {
            var form = layui.form;
            //注意:lay-filter="subjects"
            form.on('checkbox(subjects)', function (data) {
                //console.log(data.elem); //得到checkbox原始DOM對象
                //console.log(data.elem.checked); //是否被選中,true或者false
                //console.log(data.value); //複選框value值,也可以通過data.elem.value得到
                //console.log(data.othis); //得到美化後的DOM對象
                var cb = data.elem;
                var subid = $(cb).attr("id");//題目的ID
                var goufen = $(cb).attr("value");//題目分值
                var allfen = $("#allfen").text();//提示的已勾選的題目的總分
                var hdsubs = $("#hdsubs").val();//隱藏域中存放的題目集合以逗號隔開
                if (data.elem.checked) {//如果當前複選框改爲選中狀態
                    allfen = parseInt(allfen) + parseInt(goufen);
                    if (hdsubs.indexOf(","+subid + ",")<0) {
                        $("#hdsubs").val(hdsubs + subid + ",");
                    }
                }
                else {
                    allfen = parseInt(allfen) - parseInt(goufen);
                    if (hdsubs.indexOf(","+subid + ",") >= 0) {
                        hdsubs = hdsubs.replace(","+subid + ",",",");
                        $("#hdsubs").val(hdsubs);
                    }
                }
                
                $("#allfen").text(allfen);
                if (allfen>105) {
                    layer.msg('總分已達到105分,請評估是否繼續。', { icon: 7 });
                }
            }); 
        });

    </script>

</body>
</html>

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章