Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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/5/fortran/2.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
通过jquery隐藏列?_Jquery_Checkbox_Hide_Jsfiddle_Dynamic Columns - Fatal编程技术网

通过jquery隐藏列?

通过jquery隐藏列?,jquery,checkbox,hide,jsfiddle,dynamic-columns,Jquery,Checkbox,Hide,Jsfiddle,Dynamic Columns,首先,我是javascript/jquery的新手,我在stackoverflow上找到了几个在html表上隐藏列的示例,这就是我需要的: 它在JSFIDLE上工作: 但我不知道,我做错了什么,为什么当我把它放在一起时它对我不起作用: 塔布拉扎特 td,th{ 填充:6px; 边框:1px纯黑; } th{ 背景色:#f0eae2; 字体大小:粗体; } 桌子{ 边框:1px纯黑; } $(“输入:复选框:未(:选中)”)。每个(函数(){ var column=“table.”+$(t



首先,我是javascript/jquery的新手,我在stackoverflow上找到了几个在html表上隐藏列的示例,这就是我需要的:

它在JSFIDLE上工作:


但我不知道,我做错了什么,为什么当我把它放在一起时它对我不起作用:


塔布拉扎特
td,th{
填充:6px;
边框:1px纯黑;
}
th{
背景色:#f0eae2;
字体大小:粗体;
}
桌子{
边框:1px纯黑;
}
$(“输入:复选框:未(:选中)”)。每个(函数(){
var column=“table.”+$(this.attr(“name”);
$(列).hide();
});
$(“输入:复选框”)。单击(函数(){
var column=“table.”+$(this.attr(“name”);
$(列).toggle();
});
名字

电子邮件

名字 姓 电子邮件 拉里 休斯 larry@gmail.com 迈克 泰森 mike@gmail.com


感谢您的帮助:请尽可能简单地解释,就像我写的那样。提前谢谢

您需要将代码包装在
$(文档)中。就绪
块,或者将其移动到页面底部,因为这些复选框尚不存在:

<script language="javascript">  
  $(document).ready(function() {
    $("input:checkbox:not(:checked)").each(function () {
        var column = "table ." + $(this).attr("name");
        $(column).hide();
    });

    $("input:checkbox").click(function () {
        var column = "table ." + $(this).attr("name");
        $(column).toggle();
    });
  });
</script>

$(文档).ready(函数(){
$(“输入:复选框:未(:选中)”)。每个(函数(){
var column=“table.”+$(this.attr(“name”);
$(列).hide();
});
$(“输入:复选框”)。单击(函数(){
var column=“table.”+$(this.attr(“name”);
$(列).toggle();
});
});

在JSFIDLE中,左上角的第二个下拉菜单通常设置为“onLoad”,这会自动触发此行为。

为什么要使用如此旧的jQuery版本?此版本发布在示例中,我也曾在1.9.1中尝试过,但仍然不起作用:(
<script language="javascript">  
  $(document).ready(function() {
    $("input:checkbox:not(:checked)").each(function () {
        var column = "table ." + $(this).attr("name");
        $(column).hide();
    });

    $("input:checkbox").click(function () {
        var column = "table ." + $(this).attr("name");
        $(column).toggle();
    });
  });
</script>