Adobe LiveCycle Designer隐藏每个脚本的表列标题

时间:2013-10-25 09:14:49

标签: pdf-generation livecycle livecycle-designer

表标题行配置为在后续页面中包含标题行,我的脚本应该动态取消隐藏一列。 但它仅取消隐藏第一页上的标题单元格和内容单元格(在所有内容单元格上循环)。 如何实现此列的所有标题行单元格都被取消隐藏(在每个后续页面上)。

表格结构:

Table
-> TableHeader
--> TableHeaderCells
-> TableContent
--> TableContentCells

表格主编码:

this.frmTable.tblTable.hdrTableHeader.hdrCellX.presence = "visible";

3 个答案:

答案 0 :(得分:0)

您应该遍历表头。请尝试以下代码:

var fields = xfa.resolveNodes("this.frmTable.tblTable.hdrTableHeader[*]");
for (var i=0; i <= fields.length-1; i++) { 
  fields.item(i).hdrCellX.presence = "visible";
} 

答案 1 :(得分:0)

我所做的是标题上的事件监听器。使用您的代码,它将类似于:

frmTable.tblTable.hdrTableHeader::initialize - (JavaScript, client)
    this.hdrCellX.presence = "visible";

应该在表格更新时自动调用Initialize,流入新页面......

答案 2 :(得分:-1)

我不确定没有创建表单并亲自尝试 - 但我认为你需要使用[*]约定。

这样的事情:

this.frmTable.tblTable.hdrTableHeader.hdrCellX [*]。presence =“visible”;

此外 - 如果它连接到后端数据源,您可能还需要使用绑定。这是我写的一篇关于重复子表单区域工作的文章,以及如何将它绑定到XML模式http://www.adobe.com/devnet/livecycle/articles/binding-xsd.html - 它处理类似的概念。

然后你需要对这些字段进行迭代循环 - 我认为抛出你的循环是因为你没有那个[*]指示符来指示有多个,这就是为什么它只会归还那个。

希望有所帮助 - 这是我最好的猜测,看看你在这里有什么。