我的目标:

我有一个模态,我想用它来向数据库添加职位。我选择starting date,然后选中still-here复选框,它应该隐藏ending date字段并在其位置显示一个div I currently work here

我的问题:

是我的jQuery没有在模式上拾取dom元素吗?我在复选框上有console.log()来查看是否已选中,但效果不佳。它仅提供启动模态时的初始值,而不提供每次我选择/取消选择复选框时的初始值。

参见我的代码示例here

我的问题:

我缺少什么,为什么它不起作用,如何实现我的目标?

最佳答案

试试这个

$(document).ready(function() {
$('#myModal').on('shown.bs.modal', function () {
        $(".current-position").hide();
        console.log($('#still_here').is(':checked'));

        });

    });

$('#still_here').on('change',function(){
      if($('#myModal .modal-body #still_here').prop('checked')){
            $("#myModal .modal-body .current-position").show();
            console.log($("#myModal .modal-body #to_month"));
            $("#myModal .modal-body #to_month").hide();
            $("#myModal .modal-body #to_year").hide();
        }else{
            $("#myModal .modal-body .current-position").hide();
            $("#myModal .modal-body #to_month").show();
            $("#myModal .modal-body #to_year").show();
        }
});

09-25 18:35