Jquery手风琴html表显示了一个<tbody>内容
Jquery accordion html table showing one <tbody> content at a time
当用户点击表头时,我想一次只显示一个tbody内容
我在一个html文档中有四个表,默认情况下,当用户单击另一个标题时,它显示第一个表的内容,原始的tbody>内容保持打开状态,直到用户单击该标题。我正在努力寻找解决方案,以便当用户单击新标题时,只显示该标题的内容
这是我的html和jquery代码
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Accordion table</title>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
<script>
$(function() {
$("tbody:not(.first)").hide();
$("table thead tr th").click(function(){
$(this).parents('table') .children('tbody').fadeToggle("fast");
});
});
</script>
</head>
<body>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">President</th>
</tr>
</thead>
<tbody class="first">
<tr>
<td>Archdeacon Bathurst</td>
<td>1882 – 1910</td>
</tr>
<tr>
<td>Rev W W C Baker</td>
<td>1910 – 1929</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Vice President</th>
</tr>
</thead>
<tbody>
<tr>
<td>Anthony H Smith</td>
<td>1988 – 1991</td>
</tr>
<tr>
<td>John R Pemble</td>
<td>1991 – 1994</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Honorary Secretary</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mr C Hertbert</td>
<td>1882 – 1887</td>
</tr>
<tr>
<td>Rev W W C Baker</td>
<td>1887 – 1895</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Honorary Treasurer</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mr T G Elger</td>
<td>1882 – 1895</td>
</tr>
<tr>
<td>Mr T Bull</td>
<td>1895 – 1907</td>
</tr>
</tbody>
</table>
</body>
</html>
显示当前项目后,您需要隐藏所有其他tbody
元素
$(function() {
$("tbody:not(.first)").hide();
$("table thead tr th").click(function() {
var $tbody = $(this).closest('table').children('tbody').fadeToggle("fast");
$("tbody").not($tbody).fadeOut('fast');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">President</th>
</tr>
</thead>
<tbody class="first">
<tr>
<td>Archdeacon Bathurst</td>
<td>1882 – 1910</td>
</tr>
<tr>
<td>Rev W W C Baker</td>
<td>1910 – 1929</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Vice President</th>
</tr>
</thead>
<tbody>
<tr>
<td>Anthony H Smith</td>
<td>1988 – 1991</td>
</tr>
<tr>
<td>John R Pemble</td>
<td>1991 – 1994</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Honorary Secretary</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mr C Hertbert</td>
<td>1882 – 1887</td>
</tr>
<tr>
<td>Rev W W C Baker</td>
<td>1887 – 1895</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Honorary Treasurer</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mr T G Elger</td>
<td>1882 – 1895</td>
</tr>
<tr>
<td>Mr T Bull</td>
<td>1895 – 1907</td>
</tr>
</tbody>
</table>
这应该有效:
$(function() {
$("tbody:not(.first)").hide();
$("table thead tr th").click(function() {
$("tbody").hide();
$(this).parents('table').children('tbody').fadeToggle("fast");
});
});
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Accordion table</title>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">President</th>
</tr>
</thead>
<tbody class="first">
<tr>
<td>Archdeacon Bathurst</td>
<td>1882 – 1910</td>
</tr>
<tr>
<td>Rev W W C Baker</td>
<td>1910 – 1929</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Vice President</th>
</tr>
</thead>
<tbody>
<tr>
<td>Anthony H Smith</td>
<td>1988 – 1991</td>
</tr>
<tr>
<td>John R Pemble</td>
<td>1991 – 1994</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Honorary Secretary</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mr C Hertbert</td>
<td>1882 – 1887</td>
</tr>
<tr>
<td>Rev W W C Baker</td>
<td>1887 – 1895</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th colspan="2" scope="col">Honorary Treasurer</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mr T G Elger</td>
<td>1882 – 1895</td>
</tr>
<tr>
<td>Mr T Bull</td>
<td>1895 – 1907</td>
</tr>
</tbody>
</table>
</body>
</html>
相关文章:
- 是否<asp:文本框>有一个onFocusLost事件
- React Router一直给我一个警告:你不能更改<路由器路由>
- 如何制作href链接和<李>在一个包装中
- 将OnClick函数设置为<ul>,最后一个ul是擦除第一个ul-s
- 使用几个<脚本>标签不会't工作-只调用一个脚本
- 给出<选项>标记一个类?API调用不工作
- 需要一个与HTML5<音频>.哪些没有't创建或销毁视图
- react-让一个元素返回两个相邻的<tr>标签
- 运行一个特定<脚本>(Dreamweaver)
- 传递来自<输入类型=“;文件“;id=“;文件“/>尽管还有一个按钮点击
- 如何创建一个新的<李>带有复选框或<a>在里面
- 正在读取<p: 选择一个菜单/>在onchange回调中
- 链接问题:下一个字符包含在<a>TinyMce ui TinyMce中的标签
- 注入<脚本>标签给它一个合适的位置
- 使用Html.BeginFrom在ASP.Net MVC中提交一个带有锚(<a>)标记且具有一定值的表单
- Vuejs:您正在装载一个带有模板的实例以`<正文>`
- 除了最后一个<td>元素-Jquery
- 淘汰赛-给一个<李>foreach中的元素<ul>其中<李>元素
- 响应于一个“;输入“;在<输入>领域
- 如何更改<h: 选择一个菜单>在JSF中选择一个条目的下拉菜单