显示隐藏按钮,选中至少一个复选框

时间:2017-04-22 19:49:43

标签: javascript jquery checkbox

当我检查一个或多个方框时,它会显示按钮" btns" 但如果我取消选中它隐藏它们,我该如何让它留下来 如果仍然选中一个或多个复选框

<input type='checkbox' class='checklist' name='id[]' value='$id' />
<input type='checkbox' class='checklist' name='id[]' value='$id' />
<input type='checkbox' class='checklist' name='id[]' value='$id' />
<input type='checkbox' class='checklist' name='id[]' value='$id' />

$(".btns").hide();

$(".checklist").click(function() {
    if($(this).is(":checked")) {
        $(".btns").show();
    } else {
        $(".btns").hide();
    }
});

2 个答案:

答案 0 :(得分:2)

您可以检查已选中复选框的数量。如果它的长度是0 - 隐藏元素,如果没有 - 显示它。

$(".checklist").click(function() {
  $('.btns').toggle( $(".checklist:checked").length > 0 );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='checkbox' class='checklist' name='id[]' value='$id' />
<input type='checkbox' class='checklist' name='id[]' value='$id' />
<input type='checkbox' class='checklist' name='id[]' value='$id' />
<input type='checkbox' class='checklist' name='id[]' value='$id' />

<p class='btns' hidden>btns</p>

答案 1 :(得分:0)

$(".checklist").click(function() {
var check_count=$(".checklist:checked");
if(check_count.length>0){$(".btns").show();}
else{$(".btns").hide();}
});

检查是否有任何清单检查显示.btns else隐藏它