javascript - jQuery 如果选中复选框执行此操作

标签 javascript jquery forms checkbox

我有两个隐藏在 $(document).ready(function(){} 上的 div 元素,如果选中它们的特定复选框,它们应该出现,如果选中则消失选中然后取消选中。我可以使用 show()slideDown() 非常轻松地选中复选框时显示元素,但是当我使用 if else 语句它每次都返回 false 并且表单保持隐藏状态......

$(document).ready(function(){
        if($("#upload_yes").is(':checked')) {
            $("#upload_form").show();
        } else {
            $("#upload_form").hide();
        }

        if($("#new_info_yes").is(':checked')) {
                $("#new_info_form").slideDown(500);
        } else {
                $("#new_info_form").hide();
        }   
    }); 

最佳答案

您没有将此代码绑定(bind)到正确的事件:

$(document).ready(function() {
  $("#upload_yes").on('change', function() {
    if ($(this).is(':checked')) {
      $("#upload_form").show();
      $("#new_info_form").slideDown(500);
    } else {
      $("#upload_form, #new_info_form").hide();
    }
  });
}); 

关于javascript - jQuery 如果选中复选框执行此操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11856035/

相关文章:

javascript - 数组更改时 VueJS dom 不刷新

jQuery 日期选择器输入不会失去对 chrome 的关注

jquery datepicker 不适用于输入点击

javascript - jQuery 表单提交返回 false 而不是等待服务器响应

javascript - 基于先前选择的动态选择框

javascript - 在 Node.js 上为用户排队的一种方法

javascript - 尝试使用 jQuery 验证表单字段

javascript - $.post() 有时需要 2 次提交才能发送数据

javascript - React 内联条件组件属性

javascript - 使用 jquery .text() 方法向文本字符串添加新行