通过第一列创建一个可展开的表格视图单元格
make an expandable table view cell through first column
我有一个包含多行的表,用户可以在其中单击行的任意宽度,它会展开以提供额外的信息。下面是一个工作示例
html表代码
<table id="report" border="1" style="width:100%" >
<tr>
<th> First </th>
<th> Second </th>
<th> Third </th>
</tr>
<tr>
<td>1st title</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td colspan="10">
dummy text 1<br>
dummy text 1<br>
dummy text 1<br>
</td>
</tr>
<tr>
<td>2nd title</td>
<td>2</td>
<td>2</td>
</tr>
<tr>
<td colspan="10">
dummy text 2 <br>
dummy text 2<br>
dummy text 2<br>
</td>
</tr>
</table>
脚本代码
$(document).ready(function(){
$("#report tbody tr:odd").addClass("odd");
$("#report tbody tr:not(.odd)").hide();
$("#report tbody tr:first-child").show();
$("#report tbody tr.odd").click(function(){
$(this).next("tr").toggle();
$(this).find(".arrow").toggleClass("up");
});
});
我试图修改这个表一点,我想,当用户单击在第一列的任何值(在这种情况下,用户单击第一个标题或第二个标题),然后只有视图为那一行应该展开。当前视图可以在行的任何位置展开。谁能告诉我怎么做呢
如果您只想成为可单击的第一列,请将事件附加到每行的第一个td
:
$(document).ready(function(){
$("#report tbody tr:odd").addClass("odd");
$("#report tbody tr:not(.odd)").hide();
$("#report tbody tr:first-child").show();
$("#report tbody tr.odd td:first-child").click(function(){
$(this).parent().next("tr").toggle();
$(this).find(".arrow").toggleClass("up");
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<table id="report" border="1" style="width:100%" >
<tr>
<th> First </th>
<th> Second </th>
<th> Third </th>
</tr>
<tr>
<td>1st title</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td colspan="10">
dummy text 1<br>
dummy text 1<br>
dummy text 1<br>
</td>
</tr>
<tr>
<td>2nd title</td>
<td>2</td>
<td>2</td>
</tr>
<tr>
<td colspan="10">
dummy text 2 <br>
dummy text 2<br>
dummy text 2<br>
</td>
</tr>
</table>
$(document).ready(function() {
$("#report tbody tr:odd").addClass("odd");
$("#report tbody tr:not(.odd)").hide();
$("#report tbody tr:first-child").show();
$("#report tbody tr.odd").each(function() {
$(this).find('td:first').click(function() {
$(this).closest('tr').next("tr").toggle();
$(this).closest('tr').find(".arrow").toggleClass("up");
});
});
//$("#report").jExpand();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<table id="report" border="1" style="width:100%">
<tr>
<th>First</th>
<th>Second</th>
<th>Third</th>
</tr>
<tr>
<td>1st title</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td colspan="10">dummy text 1
<br>dummy text 1
<br>dummy text 1
<br>
</td>
</tr>
<tr>
<td>2nd title</td>
<td>2</td>
<td>2</td>
</tr>
<tr>
<td colspan="10">dummy text 2
<br>dummy text 2
<br>dummy text 2
<br>
</td>
</tr>
</table>
相关文章:
- 允许表单元格内容水平展开
- 如何使用图表包装函数有条件地格式化谷歌可视化表单元格
- Kendo UI网格有条件可编辑的单元格
- jqgrid在条件下动态设置单元格可编辑false
- 如何在可编辑内容中模糊表格单元格
- C#网格视图从动态创建的DataTable中实现可点击单元格
- 调用REST Service save()方法时,XPages Dojo Grid可编辑单元格不保存值
- 如何在后台网格中将特定的可编辑单元格设置为不可编辑
- 设置单元格值,使其在内联编辑中保持可编辑状态
- 如何使表格单元格中的图像可单击
- 如何使用谷歌可视化API来检索谷歌电子表格单元格值
- jQuery UI 可排序:检测表单元格中是否已包含项目
- 表格必须具有可单击的单元格才能显示 XML 文件中的更多选项
- 大表中的高性能可选单元格 - IE6
- 在具有挖空.js的剑道网格中使用可编辑的单元格
- Jquery dataTable可编辑单元格
- jqGrid与IE11的问题-当用户从可编辑单元格中弹出选项卡时,第一个键输入忽略
- 通过第一列创建一个可展开的表格视图单元格
- dataTable可编辑单元格对双击事件没有响应
- 如何为只读SlickGrid单元格提供与可编辑单元格不同的背景