在工作流(如开立银行帐户的应用程序)中,您的用户会填写多个表单。 您可以将表单堆叠在一起并构建一个大型表单(父表单),而不是要求他们填写一组表单。 向较大的表单添加自适应表单时,它将添加为面板(子表单)。 添加一组子表单以创建父表单。 您可以根据用户输入显示或隐藏面板。 父表单的按钮(如提交和重置)会覆盖子表单的按钮。 要在父表单中添加自适应表单,您可以从资产浏览器中拖放自适应表单(如自适应表单片段)。
可用功能包括:
与使用单个组件创建父表单相比,独立创作和延迟加载等功能可提供更佳的性能。
不能将基于XFA的自适应表单/片段用作子表单或父表单。
您可以在父表单中添加基于XSD的自适应表单和片段。 父表单的结构与 任意自适应表单. 将自适应表单添加为子表单时,它将作为面板添加到父表单中。 绑定子表单的数据存储在 data
根 afBoundData
父表单的XML架构的部分。
例如,您的客户会填写申请表。 表单的前两个字段是名称和标识。 其XML为:
<afData>
<afUnboundData>
<data />
</afUnboundData>
<afBoundData>
<data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
<applicantName>Sarah Rose</applicantName>
<applicantId>1234</applicantId>
</data>
</afBoundData>
</afData>
您可以在应用程序中添加其他表格,以让客户填写其办公地址。 子表单的架构根为 officeAddress
. 应用 bindref
/application/officeAddress
或 /officeAddress
. 如果 bindref
未提供,则会添加子表单,因为 officeAddress
子树。 请参阅下面表单的XML:
<afData>
<afUnboundData>
<data />
</afUnboundData>
<afBoundData>
<data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
<applicantName>Sarah Rose</applicantName>
<applicantId>1234</applicantId>
<officeAddress>
<addressLine>1, Geometrixx City</addressLine>
<zip>11111</zip>
</officeAddress>
</data>
</afBoundData>
</afData>
如果您插入另一个表单,允许客户提供住宅地址,请应用 bindref
/application/houseAddress or /houseAddress.
XML如下所示:
<afData>
<afUnboundData>
<data />
</afUnboundData>
<afBoundData>
<data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
<applicantName>Sarah Rose</applicantName>
<applicantId>1234</applicantId>
<officeAddress>
<addressLine>1, Geometrixx City</addressLine>
<zip>11111</zip>
</officeAddress>
<houseAddress>
<addressLine>2, Geometrixx City</addressLine>
<zip>11111</zip>
</houseAddress>
</data>
</afBoundData>
</afData>
如果要保留与架构根( Address
在本例中),使用索引二进制文件。
例如,应用bindrefs /application/address[1]
或 /address[1]
和 /application/address[2]
或 /address[2]
. 表单的XML为:
<afData>
<afUnboundData>
<data />
</afUnboundData>
<afBoundData>
<data xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
<applicantName>Sarah Rose</applicantName>
<applicantId>1234</applicantId>
<address>
<addressLine>1, Geometrixx City</addressLine>
<zip>11111</zip>
</address>
<address>
<addressLine>2, Geometrixx City</addressLine>
<zip>11111</zip>
</address>
</data>
</afBoundData>
</afData>
您可以使用 bindRef
属性。 的 bindRef
属性允许您指定指向XML架构树结构中某个位置的路径。
如果子表单未绑定,则其数据存储在 data
根 afUnboundData
父表单的XML架构的部分。
您可以多次将自适应表单添加为子表单。 确保 bindRef
已正确修改,以便自适应表单的每个使用实例都指向数据根下的不同子根。
如果不同的表单/片段映射到同一子根,则数据会被覆盖。
执行以下步骤,使用资产浏览器将自适应表单添加为子表单。