【问题标题】:How can I create repeated fields in Form Builder with Orbeon Forms 3.9?如何使用 Orbeon Forms 3.9 在 Form Builder 中创建重复字段?
【发布时间】:2012-01-10 01:36:28
【问题描述】:

亚历克斯,我认为我对自己的解释不够清楚(尽管您提供的信息很有用。)假设我有一个就业申请,旨在收集有关某人以前雇主的信息。假设一位雇主的网格深度为 15 个字段。如果我要允许用户输入最多 10 个过去的雇主,我将不得不手动创建 150 个单独的字段......然后......如果我对我的表单使用验证规则,让事情变得更复杂,我将不得不一次修改每个控件的属性。所以我的问题有两个方面:首先,有没有办法在表单构建器中快速复制整个网格?其次,有没有办法修改整个网格的可见性规则,而不是一次右键单击每个控件来添加可见性规则(或更改控件名称。)

【问题讨论】:

    标签: templates grid repeat orbeon xforms


    【解决方案1】:

    Orbeon 正在努力增加对 Form Builder 的支持,以便为 XForms 所称的“重复”构建 UI。使用 Form Builder 中内置的重复支持,您将能够只创建一个“行”,即一个兄弟的字段,并说该行可以重复。但由于这还不可用,您可以通过编辑表单生成器生成的源以使用重复来解决此问题。让我扩展一下这个想法:

    Form Runner,运行时,已经支持重复。只是表单生成器不允许您编辑它们。您可以通过从高级/编辑源编辑表单生成器生成的代码来使用重复。您可以在Bookshelf example 中看到重复的样子,并在source of the Bookshelf example 中查看代码的样子(在<fr:grid> 上查找<fr:repeat>)。

    在您的情况下,由于您希望将可能的兄弟姐妹的数量限制为 14 个,因此还要在 <fr:repeat> 上添加一个属性 maxOccurs="14"

    【讨论】:

    • 我正在重新阅读您更新的问题,但会给出相同的答案。这似乎确实是需要我所指的重复构造的情况,不幸的是,从 Orbeon Forms 3.9 开始,它在 Form Runner(运行时)中可用,但在 Form Builder 中不可用。这是目前正在开发的东西,应该在下一个主要版本中可用。现在,如果您想避免在 Form Builder 中复制该“雇主”部分 15 次,您必须手动编辑表单的源代码 (XForms)。如果我遗漏了什么,你会告诉我的。
    • 作为参考,在表单生成器中使用Orbeon Forms 4.0 in February 2014引入了重复网格,使用Orbeon Forms 4.5 in April 2014引入了重复部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多