【问题标题】:How to control Show/Hide fields at Runtime in Orbeon Form Runner?如何在 Orbeon Form Runner 的运行时控制显示/隐藏字段?
【发布时间】:2015-07-13 23:23:21
【问题描述】:

我在 orbeon 表单生成器中创建了一个表单,其中包含三个 30 个问题,属于 3 个类别。现在我不想向每个人展示所有 30 个问题,也不想为每个类别创建不同的表单,因为所有这些类别都属于一个模块。

在添加表单时,我有一个下拉问题,例如“选择类别”。如果用户选择第一类,那么我只需要显示第一类相关问题并隐藏第二类和第三类相关问题。

有什么方法可以在 Form Runner 中完成我的任务?

更新:

@ebruchez,我听从了您的建议,我尝试在默认的“联系人”表单上测试此功能。我在联系表单中创建了一个新的文本字段,名称为“帐户相关字段”作为标签,“control-10”作为控件名称。以下是相同的屏幕截图。

然后,我单击“帐户相关字段”的控制设置,并在“公式”选项卡下,在“可见性”部分添加了以下 XPath 表达式。 $topic='Account'以下是截图。

添加路径表达式后,我保存了联系表单并发布。然后我尝试在表单运行器中打开表单。但是在表单运行器中选择“主题”值是“帐户”后,我无法在 UI 上查看“帐户相关字段”字段。这是在表单生成器中发布表单后表单运行器的屏幕截图。

我是不是错过了什么。请帮助解决问题。仅当“主题”字段值为“帐户”时,我才需要查看“帐户相关字段”字段

提前致谢。

【问题讨论】:

  • 您必须使用下拉列表 value,而不是 label。所以$topic = 'account'。这对我有用。

标签: forms orbeon


【解决方案1】:

是的,您可以使用部分设置下的“可见性”公式。例如,如果您的下拉列表名为 foo 并且有两个条目,category1category2,那么您可以编写:

$foo = 'category1'

仅当下拉列表选择category1 时才显示该部分,并且:

$foo = 'category2'

仅当下拉列表选择 category2 时才显示该部分。

这个doc 可能会有所帮助。

【讨论】:

  • 我尝试了您的建议以及一些我无法完成任务的方法。我已经用截图更新了我的问题。请告诉我我错过了什么吗?
  • 我在上面的问题中添加了评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-09-12
  • 1970-01-01
  • 2019-02-11
  • 2021-10-04
  • 1970-01-01
相关资源
最近更新 更多