使用JavaScript控制Check框显示/隐藏明细表格

需积分: 48 7 下载量 44 浏览量 更新于2024-08-26 3 收藏 1KB TXT 举报
"该文档描述的是在泛微OA E8系统中,如何使用check框来控制明细表的显示与隐藏,以及在隐藏时清空明细表数据的实现方法。" 在泛微OA E8系统中,为了提升用户体验,有时我们需要根据用户的选择动态地展示或隐藏某些内容,例如明细表。在这个场景下,可以使用JavaScript和jQuery来实现。文档中的代码展示了通过check框(checkbox)的状态控制明细表的显示和隐藏,并在隐藏时清空明细表的所有数据。 首先,我们看到有一个变量`var_index=2;`,这个变量用于标识当前操作的明细表的索引。在页面加载完成后,通过`$(document).ready()`函数来初始化页面行为。`$("#detailDiv_"+_index).parents("tr").eq(0).hide();`这行代码用于隐藏指定索引的明细表。 接着,`document.getElementById("field14700").onchange`事件监听check框的状态变化。当check框被选中(`:checked`)时,调用`hideDetail()`函数隐藏明细表;否则,调用`showDetail()`函数显示明细表。 `showDetail()`函数的职责是显示明细表。它使用`$("#detailDiv_"+_index).parents("tr").eq(0).show();`来显示对应的明细表行,并通过`$("button[id='$addbutton"+_index+"$']").click();`模拟点击添加按钮,以确保在显示明细表后,所有相关功能都可以正常使用。 `hideDetail()`函数则负责隐藏并清空明细表。它首先清空了几个与明细表相关的字段值,如`nodesnum`、`indexnum`、`submitdtlid`和`deldtlid`,然后通过`$("#detailDiv_"+_index+"tr[_target='datarow']").remove();`删除所有的明细行数据,最后再隐藏明细表的父级行。 这段代码提供了一种在泛微OA E8系统中,基于JavaScript和jQuery实现check框控制明细表显示和隐藏,并在隐藏时清空数据的实用示例。这样的功能设计可以有效减少用户界面的复杂性,提高数据管理的效率。
2021-07-01 上传