Jquery 显示隐藏多个元素上的多个div
我必须在表格中显示打开的作品(1,2,3…),包括相关任务(1,2,3…)的列表,每一个都排成一行。任务可以打开或关闭。我试图找到一种方法来隐藏/显示特定工作(表)的已关闭任务(行),方法是单击类“showhideforwork-x”中的行这样的元素Jquery 显示隐藏多个元素上的多个div,jquery,html-table,show-hide,Jquery,Html Table,Show Hide,我必须在表格中显示打开的作品(1,2,3…),包括相关任务(1,2,3…)的列表,每一个都排成一行。任务可以打开或关闭。我试图找到一种方法来隐藏/显示特定工作(表)的已关闭任务(行),方法是单击类“showhideforwork-x”中的行这样的元素 隐藏已结束的任务 任务1(已打开) 任务2(已结束) 任务3(已结束) 任务4(已打开) 隐藏已结束的任务 任务1(已结束) 任务1(已结束) 任务3(已打开) 隐藏已结束的任务 任务1(已打开) 任务2(已结束) 任务3(已结束) 我认为我没
隐藏已结束的任务
任务1(已打开)
任务2(已结束)
任务3(已结束)
任务4(已打开)
隐藏已结束的任务
任务1(已结束)
任务1(已结束)
任务3(已打开)
隐藏已结束的任务
任务1(已打开)
任务2(已结束)
任务3(已结束)
我认为我没有按应该的方式使用类来捕获单击“showhideforwork-x”元素并隐藏/显示相应的“showhidework-x”行。您应该为关闭的元素分配一个公共类,在父元素中找到该类的所有元素并隐藏/显示(切换)它们 HTML 编辑: 不停摆弄
这是我做的。这是你需要的吗
$(文档).ready(函数(){
函数检查任务(){
var检查=$('tr td');
控制台日志(检查[1]);
$('tr td')。每个(函数(索引){
//log(index+”:“+$(this.text());
if($(this).text().indexOf(“closed”)!=-1){
$(this.parent().hide();
}
});
}
检查任务();
//您可以在body load或set上调用此函数
//每5或10分钟检查一次
});代码>
隐藏已结束的任务
任务1(已打开)
任务2(已结束)
任务3(已结束)
任务4(已打开)
隐藏已结束的任务
任务1(已结束)
任务1(已结束)
任务3(已打开)
隐藏已结束的任务
任务1(已打开)
任务2(已结束)
任务3(已结束)
你说得对,与其隐藏,不如切换()。修好了。谢谢你@Janar!是的,很好用。我不习惯parent()语句。谢谢。我不确定它是否能胜任这项工作。@Janar的答案很好。同意。如果Janar的答案对你有用,你为什么不接受呢?
<table class="work-1">
<tr class="showhideforwork-1"><td>Hide closed tasks</td><tr>
<tr><td>Task 1 (opened)</td></tr>
<tr class="showhidework-1"><td>Task 2 (closed)</td></tr>
<tr class="showhidework-1"><td>Task 3 (closed)</td></tr>
<tr><td>Task 4 (opened)</td></tr>
</table>
<table class="work-2">
<tr class="showhideforwork-2"><td>Hide closed tasks</td><tr>
<tr class="showhidework-2"><td>Task 1 (closed)</td></tr>
<tr class="showhidework-2"><td>Task 1 (closed)</td></tr>
<tr><td>Task 3 (opened)</td></tr>
</table>
<table class="work-n">
<tr class="showhideforwork-3"><td>Hide closed tasks</td><tr>
<tr><td>Task 1 (opened)</td></tr>
<tr class="showhidework-n"><td>Task 2 (closed)</td></tr>
<tr class="showhidework-n"><td>Task 3 (closed)</td></tr>
</table>
<table class="work-1">
<tr class="showhideforwork"><td>Hide closed tasks</td><tr>
<tr><td>Task 1 (opened)</td></tr>
<tr class="showhidework-closed"><td>Task 2 (closed)</td></tr>
<tr class="showhidework-closed"><td>Task 3 (closed)</td></tr>
<tr><td>Task 4 (opened)</td></tr>
</table>
<table class="work-2">
<tr class="showhideforwork"><td>Hide closed tasks</td><tr>
<tr class="showhidework-closed"><td>Task 1 (closed)</td></tr>
<tr class="showhidework-closed"><td>Task 1 (closed)</td></tr>
<tr><td>Task 3 (opened)</td></tr>
</table>
<table class="work-n">
<tr class="showhideforwork"><td>Hide closed tasks</td><tr>
<tr><td>Task 1 (opened)</td></tr>
<tr class="showhidework-closed"><td>Task 2 (closed)</td></tr>
<tr class="showhidework-closed"><td>Task 3 (closed)</td></tr>
</table>
$(".showhideforwork").click(function() {
$(this).parent().find(".showhidework-closed").toggle();
});