Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在HTML中将类从“不打印”更改为“按复选框打印”_Javascript_Html_Css - Fatal编程技术网

Javascript 在HTML中将类从“不打印”更改为“按复选框打印”

Javascript 在HTML中将类从“不打印”更改为“按复选框打印”,javascript,html,css,Javascript,Html,Css,我有很多复选框,我只想打印那些被选中的。我试过切换,直到我检查它为止 这是我的密码: CSS 不要切换类的可见性,而是切换类本身 $("#coms").click(function() { $(this).parent().toggleClass("dontprint", !$(this).is(":checked")); }); 为了避免对每个ID重复此代码,您还应该为复选框提供一个类,而不是将单击处理程序绑定到特定ID。或者,如果它们都在特定的DIV中,您可以执行以下操作: $(

我有很多复选框,我只想打印那些被选中的。我试过切换,直到我检查它为止

这是我的密码:

CSS


不要切换类的可见性,而是切换类本身

$("#coms").click(function() {
    $(this).parent().toggleClass("dontprint", !$(this).is(":checked"));
});
为了避免对每个ID重复此代码,您还应该为复选框提供一个类,而不是将单击处理程序绑定到特定ID。或者,如果它们都在特定的DIV中,您可以执行以下操作:

$(“#容器:复选框”)。单击(函数(){
$(this.closest(“.hidable”).toggleClass(“dontprint”,!this.checked);
});
.dontprint{
背景颜色:灰色;
}
@媒体印刷品{
dontprint先生{
显示:无;
}
}

复选框1
阅读
编辑
复选框2
阅读
编辑
复选框3
阅读
编辑

当什么都没有显示时,如何单击任何内容,css会将显示设置为“无”。由于他有“许多复选框”,他还需要确保使用类而不是ID,例如
$('.coms')
。我在选中复选框时出现此错误:错误:语法错误,无法识别的表达式:不支持的伪:单击抛出新错误(“语法错误,无法识别的表达式:“+msg”);很抱歉,
:单击的
应该被选中
:选中
。parent()
是错误的,我不知道复选框嵌套得有多深。我已将其更改为在DIV上使用一个应在打印期间隐藏的
可隐藏的
类,并使用
.closest()
查找它。这是一个很好的示例,但由于某些原因,它对我不起作用。但这确实起到了作用:
$(“.dontprint”).css(“显示”、“块”)。现在,只要我能在取消选中时让它切换:)
<div class="dontprint">
  <div class="checkbox"> <label><input type="checkbox"id="coms">  \\Private\Computer Services </label> </div>
  <div class="coms">
    <select class="form-control">
        <option >READ</option>
        <option >EDIT</option>
    </select>
  </div>
</div>
$("#coms").click(function(){
    $(".dontprint").toggle();
});
$("#coms").click(function() {
    $(this).parent().toggleClass("dontprint", !$(this).is(":checked"));
});