Javascript 在多个复选框选择中显示某些div无效

Javascript 在多个复选框选择中显示某些div无效,javascript,jquery,html,css,bootstrap-4,Javascript,Jquery,Html,Css,Bootstrap 4,我有一个带有七个复选框的部分,它们是星期天、星期一、星期二、星期三、星期四、星期五和星期六。我还有另外两个部分和其他复选框,它们是上午会议部分和晚上会议部分 现在我需要做的是,如果有人在sessionDays中选择了从周日到周五的任何一天,那么它应该同时显示上午会话部分和晚上会话部分。但是,如果有人选中“周六”或“周日”复选框,它应该只显示“上午会话”部分 我试着用下面的代码来做这件事,但它只显示星期一选择中的早晚部分。如果选择了其他日期,则不会显示任何内容 jQuery(函数($){ //为

我有一个带有七个复选框的部分,它们是星期天、星期一、星期二、星期三、星期四、星期五和星期六。我还有另外两个部分和其他复选框,它们是上午会议部分和晚上会议部分

现在我需要做的是,如果有人在sessionDays中选择了从周日到周五的任何一天,那么它应该同时显示上午会话部分和晚上会话部分。但是,如果有人选中“周六”或“周日”复选框,它应该只显示“上午会话”部分

我试着用下面的代码来做这件事,但它只显示星期一选择中的早晚部分。如果选择了其他日期,则不会显示任何内容

jQuery(函数($){
//为变量指定div和字段
变量sessionDays=$('.sessionDays');
var sessionSunday=$(“#sessionSunday”);
var sessionMonday=$('sessionMonday');
var sessionTuesday=$('sessionTuesday');
var Session周三=$(“#Session周三”);
var sessionThursday=$(“#sessionThursday”);
var sessionFriday=$(“#sessionFriday”);
var sessionSaturday=$(“#sessionSaturday”);
var sessionTime=$('.sessionTime');
var sessionMorning=$('.sessionMorning');
var eightnine=$(“#八九”);
var nineten=$('九个十');
var teneleven=$(“#teneleven”);
变量elevenleven=$(“#十一十二”);
var sessionEvening=$('.sessionEvening');
var fourfive=$(“#四五”);
var fivesix=$(#五六’);
var sixseven=$(“#sixseven”);
var seveneight=$('七八');
//隐藏所需的div
sessionEvening.hide();
sessionMorning.hide();
sessionDays.hide();
$(“#selectSessionType”).change(函数(){
if(!$(this.val()){
sessionDays.hide();
}否则{
sessionDays.show();
}
}).change();
$(sessionMonday、sessionTuesday、session周三、sessionUrsday、sessionFriday)。更改(函数(){
如果(sessionMonday.is(':checked')==true | | | | sessionUesday.is(':checked')==true | | | | session周三.is(':checked')==true | | | sessionFriday.is(':checked')==true){
sessionMorning.show();
sessionEvening.show();
}else if(sessionSaturday.is(':checked')==true | | sessionSunday.is(':checked')==true){
sessionMorning.show();
}否则{
sessionMorning.hide();
sessionEvening.hide();
}
});
});

18岁以下儿童选课
选择会话类型*
选择会话类型
初学者
每小时
月刊
选择会话日

选择您希望参加培训的具体日期

星期日 星期一 星期二 星期三 星期四 星期五 星期六 选择会话时间 上午会议

上午8:00-9:00 上午9:00-10:00 上午10:00-11:00 上午11:00-下午12:00 晚间会议

下午四时至五时 下午五时至六时 下午六时至七时 下午七时至八时
我在周五和周六的复选框中添加了周末课程,在其他日子添加了周日课程

编辑:HTML:

<div class="form-group col-md-4">
    <div class="days sessionDays">
        <label>Select Session Days</label>
        <p class="text-muted">Select the specific days you want to come for training.</p>
        <div class="form-check">
            <input class="form-check-input weekend" type="checkbox" value="" id="sessionSunday">
            <label class="form-check-label" for="sessionSunday">
            Sunday
            </label>
        </div>
        <div class="form-check">
            <input class="form-check-input weekday" type="checkbox" value="" id="sessionMonday">
            <label class="form-check-label" for="sessionMonday">
            Monday
            </label>
        </div>
        <div class="form-check">
            <input class="form-check-input weekday" type="checkbox" value="" id="sessionTuesday">
            <label class="form-check-label" for="sessionTuesday">
            Tuesday
            </label>
        </div>
        <div class="form-check">
            <input class="form-check-input weekday" type="checkbox" value="" id="sessionWednesday">
            <label class="form-check-label" for="sessionWednesday">
            Wednesday
            </label>
        </div>
        <div class="form-check">
            <input class="form-check-input weekday" type="checkbox" value="" id="sessionThursday">
            <label class="form-check-label" for="sessionThursday">
            Thursday
            </label>
        </div>
        <div class="form-check">
            <input class="form-check-input weekday" type="checkbox" value="" id="sessionFriday">
            <label class="form-check-label" for="sessionFriday">
                Friday
            </label>
        </div>
        <div class="form-check">
            <input class="form-check-input weekend" type="checkbox" value="" id="sessionSaturday">
            <label class="form-check-label" for="sessionSaturday">
                Saturday
            </label>
        </div>
    </div>
</div>
<div class="form-group col-md-4">
    <div class="sessionTime">
        <div class="sessionMorning">
            <label>Select Session Time</label>
            <p style="font-weight:bold;">Morning Session</p>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="eight-nine">
            <label class="form-check-label" for="eight-nine">8:00 AM - 9:00 AM</label>
            </div>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="nine-ten">
            <label class="form-check-label" for="nine-ten">9:00 AM - 10:00 AM</label>
            </div>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="ten-eleven">
            <label class="form-check-label" for="ten-eleven">10:00 AM - 11:00 AM</label>
            </div>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="eleven-twelve">
            <label class="form-check-label" for="eleven-twelve">11:00 AM - 12:00 PM</label>
            </div>
        </div>
        <div class="sessionEvening">
            <p style="font-weight:bold;">Evening Session</p>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="four-five">
            <label class="form-check-label" for="four-five">4:00 PM - 5:00 PM</label>
            </div>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="five-six">
            <label class="form-check-label" for="five-six">5:00 PM - 6:00 PM</label>
            </div>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="six-seven">
            <label class="form-check-label" for="six-seven">6:00 PM - 7:00 PM</label>
            </div>
            <div class="form-check">
            <input class="form-check-input" type="checkbox" value="" id="seven-eight">
            <label class="form-check-label" for="seven-eight">7:00 PM - 8:00 PM</label>
            </div>
        </div>
    </div>
</div>

根据您的要求,我在jquery中使用了map并将值分配给复选框,下面是代码:

jQuery(function ($) {
    var sessionDays = $('.sessionDays');
    var sessionMorning = $('.sessionMorning');
    var sessionEvening = $('.sessionEvening');
    //Hide required DIVs
    sessionDays.hide();
    sessionMorning.hide();
    sessionEvening.hide();

    $("#selectSessionType").change(function () {
        if (!$(this).val()) {
            sessionDays.hide();
        } else {
            sessionDays.show();
        }
    }).change();
    $(".sessionDays").change(function () {
        sessionMorning.hide();
        sessionEvening.hide();
        $('.form-check-input:checked').map(function () {
            if (
                this.value == 'Monday' ||
                this.value == 'Tuesday' ||
                this.value == 'Wednesday' ||
                this.value == 'Thursday' ||
                this.value == 'Friday') {
                sessionMorning.show();
                sessionEvening.show();
                exit();
            } else if (this.value == 'Saturday' ||
                this.value == 'Sunday') {
                sessionMorning.show();
                sessionEvening.hide();
            } else {
                sessionMorning.hide();
                sessionEvening.hide();
            }
        });
    }).change();}
编辑HTML:

<div class="age underEighteen">
<h3>Under 18 Class Selection</h3>
<div class="form-row">
    <div class="form-group col-md-4">
        <label for="selectSessionType">Choose Session Type <span>*</span></label>
        <select class="form-control" id="selectSessionType">
            <option selected="selected" value="">Select Session Type</option>
            <option value="beginners">Beginners</option>
            <option value="hourly">Hourly</option>
            <option value="monthly">Monthly</option>
        </select>
    </div>
    <div class="form-group col-md-4">
        <div class="days sessionDays">
            <label>Select Session Days</label>
            <p class="text-muted">Select the specific days you want to come for training.</p>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Sunday" id="sessionSunday">
                <label class="form-check-label" for="sessionSunday">
                    Sunday
                </label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Monday" id="sessionMonday">
                <label class="form-check-label" for="sessionMonday">
                    Monday
                </label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Tuesday" id="sessionTuesday">
                <label class="form-check-label" for="sessionTuesday">
                    Tuesday
                </label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Wednesday" id="sessionWednesday">
                <label class="form-check-label" for="sessionWednesday">
                    Wednesday
                </label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Thursday" id="sessionThursday">
                <label class="form-check-label" for="sessionThursday">
                    Thursday
                </label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Friday" id="sessionFriday">
                <label class="form-check-label" for="sessionFriday">
                    Friday
                </label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="checkbox" value="Saturday" id="sessionSaturday">
                <label class="form-check-label" for="sessionSaturday">
                    Saturday
                </label>
            </div>
        </div>
    </div>
    <div class="form-group col-md-4">
        <div class="sessionTime">
            <div class="sessionMorning">
                <label>Select Session Time</label>
                <p style="font-weight:bold;">Morning Session</p>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="eight-nine">
                    <label class="form-check-label" for="eight-nine">8:00 AM - 9:00 AM</label>
                </div>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="nine-ten">
                    <label class="form-check-label" for="nine-ten">9:00 AM - 10:00 AM</label>
                </div>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="ten-eleven">
                    <label class="form-check-label" for="ten-eleven">10:00 AM - 11:00 AM</label>
                </div>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="eleven-twelve">
                    <label class="form-check-label" for="eleven-twelve">11:00 AM - 12:00 PM</label>
                </div>
            </div>
            <div class="sessionEvening">
                <p style="font-weight:bold;">Evening Session</p>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="four-five">
                    <label class="form-check-label" for="four-five">4:00 PM - 5:00 PM</label>
                </div>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="five-six">
                    <label class="form-check-label" for="five-six">5:00 PM - 6:00 PM</label>
                </div>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="six-seven">
                    <label class="form-check-label" for="six-seven">6:00 PM - 7:00 PM</label>
                </div>
                <div class="form-check">
                    <input class="form-check-input" type="checkbox" value="" id="seven-eight">
                    <label class="form-check-label" for="seven-eight">7:00 PM - 8:00 PM</label>
                </div>
            </div>
        </div>
    </div>
</div>

18岁以下儿童选课
选择会话类型*
选择会话类型
初学者
每小时
月刊
选择会话日

选择您希望参加培训的具体日期

星期日 星期一 星期二 星期三 星期四 星期五 星期六 选择会话时间 上午会议

上午8:00-9:00 上午9:00-10:00 上午10:00-11:00 上午11:00-下午12:00

<div class="age underEighteen"> <h3>Under 18 Class Selection</h3> <div class="form-row"> <div class="form-group col-md-4"> <label for="selectSessionType">Choose Session Type <span>*</span></label> <select class="form-control" id="selectSessionType"> <option selected="selected" value="">Select Session Type</option> <option value="beginners">Beginners</option> <option value="hourly">Hourly</option> <option value="monthly">Monthly</option> </select> </div> <div class="form-group col-md-4"> <div class="days sessionDays"> <label>Select Session Days</label> <p class="text-muted">Select the specific days you want to come for training.</p> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Sunday" id="sessionSunday"> <label class="form-check-label" for="sessionSunday"> Sunday </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Monday" id="sessionMonday"> <label class="form-check-label" for="sessionMonday"> Monday </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Tuesday" id="sessionTuesday"> <label class="form-check-label" for="sessionTuesday"> Tuesday </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Wednesday" id="sessionWednesday"> <label class="form-check-label" for="sessionWednesday"> Wednesday </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Thursday" id="sessionThursday"> <label class="form-check-label" for="sessionThursday"> Thursday </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Friday" id="sessionFriday"> <label class="form-check-label" for="sessionFriday"> Friday </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="Saturday" id="sessionSaturday"> <label class="form-check-label" for="sessionSaturday"> Saturday </label> </div> </div> </div> <div class="form-group col-md-4"> <div class="sessionTime"> <div class="sessionMorning"> <label>Select Session Time</label> <p style="font-weight:bold;">Morning Session</p> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="eight-nine"> <label class="form-check-label" for="eight-nine">8:00 AM - 9:00 AM</label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="nine-ten"> <label class="form-check-label" for="nine-ten">9:00 AM - 10:00 AM</label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="ten-eleven"> <label class="form-check-label" for="ten-eleven">10:00 AM - 11:00 AM</label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="eleven-twelve"> <label class="form-check-label" for="eleven-twelve">11:00 AM - 12:00 PM</label> </div> </div> <div class="sessionEvening"> <p style="font-weight:bold;">Evening Session</p> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="four-five"> <label class="form-check-label" for="four-five">4:00 PM - 5:00 PM</label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="five-six"> <label class="form-check-label" for="five-six">5:00 PM - 6:00 PM</label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="six-seven"> <label class="form-check-label" for="six-seven">6:00 PM - 7:00 PM</label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="seven-eight"> <label class="form-check-label" for="seven-eight">7:00 PM - 8:00 PM</label> </div> </div> </div> </div> </div>