Javascript 选中所有复选框并隐藏
如何添加一个复选框,该复选框可以在选中时选中所有复选框 如何将显示/隐藏功能添加到“全选”复选框中。 如果选中了check all复选框,则还需要显示submit按钮Javascript 选中所有复选框并隐藏,javascript,jquery,html,Javascript,Jquery,Html,如何添加一个复选框,该复选框可以在选中时选中所有复选框 如何将显示/隐藏功能添加到“全选”复选框中。 如果选中了check all复选框,则还需要显示submit按钮 $(document).ready(function() { var $submit = $("#submit_prog").hide(), $cbs = $('input[name="prog"]').click(function() { $submit.toggle( $cbs.is(":checke
$(document).ready(function() {
var $submit = $("#submit_prog").hide(),
$cbs = $('input[name="prog"]').click(function() {
$submit.toggle( $cbs.is(":checked") );
});
});
<input type="checkbox" name="?" value="?"> // check all checkbox
<input type="checkbox" name="prog" value="1">
<input type="checkbox" name="prog" value="2">
<input type="submit" id="submit_prog" value='Submit' />
$(文档).ready(函数(){
var$submit=$(“#submit_prog”).hide(),
$cbs=$('input[name=“prog”]”)。单击(函数(){
$submit.toggle($cbs.is(“:checked”);
});
});
//选中所有复选框
seall
$('#selall').click(function(){
$('input:checkbox').prop('checked', $(this).is(':checked'))
})
这很简单
将此复选框命名为
现在添加事件:
$('input[name="check_all"]').click( function() {
if( $(this).is(':checked') ) {
$('input[name="prog"]').attr('checked', 'checked');
} else {
$('input[name="prog"]').removeAttr('checked');
}
$('input[name="prog"]:eq(0)').change(); //firing event which we will catch
});
然后,我们应该检查是否所有输入[name=“prog”]
都已检查:
$('input[name="prog"]').change( function() {
if( $('input[name="prog"]:not(:checked)').length ) {
$('#submit_prog').hide();
} else {
$('#submit_prog').show();
}
});
选中
#all
复选框上的所有复选框,并在选中所有复选框时选中#all
<SCRIPT language="javascript">
$(function(){
$("#all").click(function () {
$('.one').attr('checked', this.checked);
if (this.checked) {$('#submit_prog').hide();}
(this.checked)?$('#submit_prog').show():$('#submit_prog').hide();
});
$(".one").click(function(){
if($(".one").length == $(".one:checked").length) {
$("#all").attr("checked", "checked");
$('#submit_prog').show();
} else {
$("#all").removeAttr("checked");
$('#submit_prog').hide();
}
});
});
</SCRIPT>
$(函数(){
$(“#全部”)。单击(函数(){
$('.one').attr('checked',this.checked);
如果(this.checked){$('#submit_prog').hide()}
(this.checked)?$('submit_prog').show():$('submit_prog').hide();
});
$(“.one”)。单击(函数(){
if($(.one”).length==$(.one:checked”).length){
$(“全部”).attr(“已检查”、“已检查”);
$('submit_prog').show();
}否则{
$(“#全部”).removeAttr(“选中”);
$(“#提交_prog”).hide();
}
});
});
更改复选框的id和类别
<input type="checkbox" id="all" > // check all checkbox
<input type="checkbox" name="prog" class="one" value="1">
<input type="checkbox" name="prog" class="one" value="2">
//选中所有复选框
给全选复选框一个id,说selectall
,然后
$('#selectall').click(function(){
if (this.checked){
$('input[name="prog"]').prop('checked', true);
$submit.toggle( true );
}
});
如果要取消选中复选框,请在未选中的情况下选择“全部”
$('#selectall').click(function(){
$('input[name="prog"]').prop('checked', this.checked);
$submit.toggle( this.checked);
});
您尝试过这个吗?:但是您也可以手动单击
name=“prog”
,然后$submit
可见性将出错。因此有一个选项,即不选中任何复选框:选中,您将看到$submit
。这是一个错误。如果选中了“全部选中”,则至少要取消选中一个复选框,则需要取消选中该复选框“全部选中”仅起作用一次,并且“提交”按钮仍然隐藏。使用属性而不是属性来操纵复选框状态HMM仍然只选中所有复选框一次。但是显示/隐藏功能工作正常。提交按钮仍然隐藏。提交按钮如何?当我选中“全选”复选框时,它仍然隐藏。编辑了我的答案。抱歉,在阅读问题时错过了提交部分。现在它可以工作了。你能告诉我,如果我至少取消选中一个复选框值,那么所有复选框都将被取消选中。谢谢。当我取消选中其中一个复选框时,“全选”不会取消选中。请使用属性而不是属性来操作复选框状态
$('#selectall').click(function(){
if (this.checked){
$('input[name="prog"]').prop('checked', true);
$submit.toggle( true );
}
});
$('#selectall').click(function(){
$('input[name="prog"]').prop('checked', this.checked);
$submit.toggle( this.checked);
});
$cbs = $('input[name="prog"]').click(function() {
$submit.toggle( $cbs.filter(':checked').length == 0 );
if (!this.checked) $('#selectall').prop('checked', false);
});