Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.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 使用特定类单击行后隐藏所有行_Javascript_Html_Css - Fatal编程技术网

Javascript 使用特定类单击行后隐藏所有行

Javascript 使用特定类单击行后隐藏所有行,javascript,html,css,Javascript,Html,Css,我有一张桌子,上面有不同类别的行。我想要的是,如果单击了一个breakrow,那么它下面的所有数据行要么在隐藏时显示,要么在显示时隐藏。以下是该表的一个示例: 我发现了一个stackoverflow,它完全符合我的需要,但当我尝试实现它时,它不起作用。任何帮助都会很棒 这是我的HTML页面。我的表是动态生成的 $document.readyfunction{ $gobutton.clickfunction{ var userText=$inputText.val; var data=proce

我有一张桌子,上面有不同类别的行。我想要的是,如果单击了一个breakrow,那么它下面的所有数据行要么在隐藏时显示,要么在显示时隐藏。以下是该表的一个示例:

我发现了一个stackoverflow,它完全符合我的需要,但当我尝试实现它时,它不起作用。任何帮助都会很棒

这是我的HTML页面。我的表是动态生成的

$document.readyfunction{ $gobutton.clickfunction{ var userText=$inputText.val; var data=processRawDatauserText; 数据=getAllDatadata; data=data.sort //提取所有唯一年份 风险值年数=[]; 年份=提取唯一年份年份,数据; //提取所有独特的学期 var semsetersUn=[]; semsetersUn=提取唯一性SemestersSemsetrSun,数据; 累计风险值=[]; 累加=计算累加调节累加数据; 年风险值=[]; 年=计算年数,数据,年数; var平均=[]; semseterly=计算最短gpaseterly,数据,semsetersUn; console.logcumulative; console.logyear; console.logsemseterly; tableString=+createTableHeaders; 对于变量i=0;i看起来您只是缺少jQuery脚本标记

时间段 采取的单位 获得的学分 平均成绩 去
在本例中,与中的.first level行等效的行属于类.breakrow。您可能还希望切换一个类,例如hide而不是slow,因为您正在切换它们是否隐藏。因此

$('.first-level').click(function() {
  $(this).nextUntil('.first-level').toggle("slow");
});
应改写为

$('.breakrow').click(function() {
  $(this).nextUntil('.breakrow').toggle("hide");
});
这将在正确的行上切换隐藏类。然后在CSS中可以实现.hide类,如

.datarow.hide {
  display: none;
}
只是你现在也有一张便条

.datarow {
  display: none;
}
在您的CSS中,您可能希望删除它,以便只有当它们具有.hide类时才隐藏它们。如果希望在加载表时隐藏它们,可以使用.hide类对它们进行初始化

希望有帮助


另请注意,您发布的HTML片段缺少两个结束标记,请发布一个以获得问题的答案。我已尝试修复您的片段。请让它看起来像是应该的。如果你的表是动态的,那么你需要授权点击。我的主html中有脚本标记。我刚开始贴到堆栈溢出,但我忘了贴上去。我的表格内容是自动生成的,所以我只放表格。做了一次编辑,我已经
那代码有什么问题?预期结果是什么?生成表时,单击分隔行不会执行任何操作。$'table'.onclick,.breakrow,函数{$this.nextUntil'.breakrow'.togglehide;};如果是动态的
.datarow {
  display: none;
}