通过js在表中显示和隐藏元素
show and hide element in table by js
<!DOCTYPE html>
<html>
<head>
<style>
tr ,table,td
{
border:black solid 1px;
text-align:center;
}
table
{
border-collapse:collapse;
}
#ab
{
background-color:cyan;
}
</style>
</head>
<body>
<table style="width:100%">
<tbody>
<tr id='ab'>
<th>Name</th>
<th>work</th>
<th>payment</th>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
</tbody>
<tbody>
<tr id='ab'>
<th>Name</th>
<th>work</th>
<th>payment</th>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
</tbody>
<tbody>
<tr id='ab'>
<th>Name</th>
<th>work</th>
<th>payment</th>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
</tbody>
<tbody>
<tr id='ab'>
<th>Name</th>
<th>work</th>
<th>payment</th>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
</tbody>
<tbody>
<tr id='ab'>
<th>Name</th>
<th>work</th>
<th>payment</th>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
</tbody>
</table>
</body>
<script >
</script>
</html>
我只想扫描元素类型为<th>
的那些行(<tr>
),然后查找parentclement并隐藏内容[<td>
]我如何改进这个
prop = document.getElementsByTagName("th");
a = prop[0].parentNode.parentNode.children;
for(var i=1;i<a.length;i++){
a[i].style.display="none";
}
<table class='tblinfo' style="width: 100%">
<thead>
<tr>
<th>Name</th>
<th>work</th>
<th>payment</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
<td>80</td>
</tr>
</tbody>
我想你想做的是上面的html代码。如果您使用的是table,那么th元素(要显示为表头的元素)应该在ad内,其他元素都应该在body元素内。
要选择表格的第个元素,下面是代码:
$('.tblinfo thead tr th').addClass('tablehead');
将onclick事件绑定到每个表行,并在触发onclick时隐藏/显示父对象tbody。
var tableSection = document.getElementsByClassName("ab");
for(var i = 0; i < tableSection.length; i++){
tableSection[i].onclick = function(){
var tbody = this.parentNode;
for(var j = 1; j < (tbody.childNodes.length/3) + 1; j++){
var status = tbody.getElementsByTagName("tr")[j].style.display;
if(status == "" || status == "block"){
tbody.getElementsByTagName("tr")[j].style.display = 'none';
} else{
tbody.getElementsByTagName("tr")[j].style.display = '';
}
}
};
}
jsFiddle
props=document.getElementsBytagName('td');
for(var i in props)
{
props[i].style.display="none";
}*/
prop=document.getElementsByTagName("th");
for(var i in prop)
{
prop[i].onclick=b;
}
function b()
{
a= this.parentNode.parentNode.children;
if(a[1].style.display=="")
{
for(var i=1;i<a.length;i++)
{
a[i].style.display="none";
}
}
else
{
for(var i=1;i<a.length;i++)
{
a[i].style.display="";
}
}
}
prop=document.getElementsByTagName("th");
for(var i in prop)
{
prop[i].onclick=b;
}
function b()
{
a= this.parentNode.parentNode.children;
if(a[1].style.display=="")
{
for(var i=1;i<a.length;i++)
{
a[i].style.display="none";
}
}
else
{
for(var i=1;i<a.length;i++)
{
a[i].style.display="";
}
}
}
相关文章:
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- JavaScript-在手机上不工作的情况下,在外部单击时隐藏元素
- 随时隐藏元素
- 根据特定条件使用ng显示/ng隐藏来显示/隐藏元素
- 隐藏元素直到加载完成(ng斗篷不是我需要的)
- 在具有类的元素中隐藏元素
- javascript()onclick隐藏元素-dos'我不在firefox工作
- JQueryHide()在按钮中使用元素时不会隐藏元素
- 使用Javascript取消隐藏元素
- 如果鼠标离开父对象,则隐藏元素
- 如何在jquery ajax成功html响应中找到输入隐藏元素
- 基于事件在循环中隐藏元素
- 渐进式增强-不使用CSS隐藏元素
- 隐藏元素后更新滚动条
- jQuery没有隐藏元素
- jQuery隐藏元素在使用CSS显示时保持隐藏状态
- 如何使用javascript在区域外单击时隐藏元素
- 如何在加载网页时隐藏元素
- JS:隐藏元素上的事件侦听器
- HTML 显示/隐藏元素 JS 不起作用