基于核心组件的自适应Forms的规则编辑器用户界面
基于核心组件的自适应Forms的规则编辑器用户界面增强了Adobe Experience Manager (AEM)中的表单创建过程。 它使商业用户和开发人员能够通过编写规则来根据预定义的条件、用户输入和交互触发操作,从而将动态行为和复杂逻辑实施到表单中。 此功能支持现代JavaScript功能(包括ES10功能),并提供了一个直观的可视化编辑器,从而简化了规则编写过程。
规则编辑器有助于简化表单填写体验,确保准确性和效率。 它允许验证或重置面板和表单,并执行自定义函数以计算表单对象的值。 由于规则编辑器用户界面支持嵌套条件和能够调用表单数据模型服务,因此它是创建响应式、用户友好和自适应表单的关键组件。
了解规则编辑器用户界面 understanding-the-rule-editor-user-interface
规则编辑器提供了一个全面而简单的用户界面来编写和管理规则。 您可以在创作模式下从自适应表单中启动规则编辑器用户界面。
要启动规则编辑器用户界面,请执行以下操作:
-
在创作模式下打开自适应表单。
-
选择要为其编写规则的表单对象,然后在组件工具栏中选择
此视图中列出了选定表单对象上的任何现有规则。 有关管理现有规则的信息,请参阅管理规则。
-
选择 创建 以编写新规则。 默认情况下,首次启动规则编辑器时会打开规则编辑器用户界面的可视化编辑器。
让我们详细了解一下规则编辑器UI的每个组件。
A.组件规则显示 a-component-rule-display
显示自适应表单对象的标题(通过自适应表单对象启动规则编辑器)和当前选定的规则类型。 在上述示例中,规则编辑器从标题为问题1的自适应表单对象启动,并且选定的规则类型为何时。
B.表单对象和功能 b-form-objects-and-functions-br
规则编辑器用户界面左侧的窗格包含两个选项卡 — Forms对象 和 函数。
“表单对象”选项卡显示自适应表单中包含的所有对象的分层视图。 它显示对象的标题和类型。 在编写规则时,可以将表单对象拖放到规则编辑器中。 在将对象或函数拖放到占位符中时,在创建或编辑规则时,占位符会自动采用相应的值类型。
应用了一个或多个有效规则的表单对象将标有绿点。 如果应用于表单对象的任意规则无效,则表单对象将标有黄点。
“函数”选项卡包含一组内置函数,例如“总和”、“最小值”、“最大值”、“平均值”、“数目”和“验证表单”。 您可以使用这些函数计算可重复面板和表格行中的值,并在编写规则时在操作和条件语句中使用它们。 但是,您也可以创建自定义函数。
图中显示了一些函数列表:
在表单对象的左树中,您可以选择表单对象以显示应用于每个对象的规则。 您不仅可以浏览各种表单对象的规则,还可以复制粘贴表单对象之间的规则。 有关详细信息,请参阅复制粘贴规则。
C.表单对象和功能切换 c-form-objects-and-functions-toggle-br
点按切换按钮可切换表单对象和函数窗格。
D.可视规则编辑器 visual-rule-editor
可视规则编辑器是规则编辑器用户界面的可视编辑器模式中用于编写规则的区域。 它允许您选择规则类型并相应地定义条件和操作。 在规则中定义条件和操作时,您可以从表单对象和函数窗格中拖放表单对象和函数。
有关使用可视规则编辑器的详细信息,请参阅编写规则。
E.完成和取消按钮 done-and-cancel-buttons
Done 按钮用于保存规则。 您可以保存不完整的规则。 但是,不完整部分无效,因此不会运行。 当您下次从同一表单对象启动规则编辑器时,会列出表单对象中已保存的规则。 您可以在该视图中管理现有规则。 有关详细信息,请参阅管理规则。
使用 取消 按钮可放弃对规则所做的任何更改并关闭规则编辑器。
写入规则 write-rules
您可以使用可视规则编辑器编写规则
我们首先看一下如何使用可视编辑器编写规则。
+++
让我们了解如何使用以下示例表单在可视编辑器中创建规则。
示例贷款申请表中的“贷款要求”部分要求申请人指定其婚姻状况、工资,如果已婚,还须指定其配偶的工资。 根据用户输入,规则将计算贷款资格金额,并显示在贷款资格字段中。 应用以下规则来实施方案:
- 配偶的“薪金”字段仅在婚姻状况为已婚时显示。
- 贷款资格金额为工资总额的50%。
要编写规则,请执行以下步骤:
-
首先,根据用户为“婚姻状况”单选按钮选择的选项,编写规则以控制“配偶薪金”字段的可见性。
以创作模式打开贷款申请表单。 选择 婚姻状况 组件并选择
在启动规则编辑器时,默认情况下会选中When规则。 此外,从中启动规则编辑器的表单对象(在本例中为“婚姻状况”)在When语句中指定。
虽然不能更改或修改所选对象,但可以使用如下所示的规则下拉列表选择其他规则类型。 如果要在其他对象上创建规则,请选择“取消”以退出规则编辑器,然后从所需的表单对象中再次启动该编辑器。
-
选择 选择状态 下拉列表并选择 等于。 出现 输入字符串 字段。
-
在规则的 输入字符串 字段中,从下拉菜单中选择 已婚。
您已将条件定义为
When Marital Status is equal to Married
。 接下来,定义此条件为True时要执行的操作。 -
在Then语句中,从 选择操作 下拉列表中选择 显示。
-
从“表单对象”选项卡中拖放 放置对象上的 Warbant Salary 字段,或选择此处 字段。 或者,选择 Drop对象或选择此处 字段,然后从弹出菜单中选择 Berpha Salary 字段,该字段列出了表单中的所有表单对象。
接下来,定义此条件为False时要执行的操作。
-
单击 添加其他部分 为 配偶薪金 字段添加其他条件,以防您选择婚姻状况作为单身。
-
在Else语句中,从 选择操作 下拉列表中选择 隐藏。
-
从“表单对象”选项卡中拖放 放置对象上的 Warbant Salary 字段,或选择此处 字段。 或者,选择 Drop对象或选择此处 字段,然后从弹出菜单中选择 Berpha Salary 字段,该字段列出了表单中的所有表单对象。
规则在规则编辑器中如下所示。
-
选择 完成 以保存规则。
note note |
---|
NOTE |
或者,您可以在“配偶薪金”字段上编写显示规则,而不是“婚姻状况”字段上的显示规则,以实施相同的行为。 |
-
接下来,编写规则以计算贷款资格金额(占总薪金的50%),并在“贷款资格”字段中显示。 若要获得此结果,请在“贷款资格”字段中创建 设置值。
在创作模式下,选择 贷款资格 字段并选择
-
从规则下拉列表中选择 设置规则值。
-
选择 选择选项 并选择 数学表达式。 用于编写数学表达式的字段打开。
-
在表达式字段中:
-
从Forms的“对象”选项卡中,选择或拖放第一个 放置对象中的 Salary 字段,或选择此处 字段。
-
从 选择运算符 字段中选择 加号。
-
从Forms的“对象”选项卡中选择或拖放另一个 拖放对象中的 Berphor Salary 字段,或选择此处 字段。
-
-
接下来,在表达式字段周围高亮显示的区域中选择,然后选择 扩展表达式。
在扩展表达式字段中,从 Select Operator 字段中选择 除以 并从 Select Option 字段中选择 Number。 然后在数字字段中指定 2。
note note NOTE 您可以从“选择选项”字段中使用组件、函数、数学表达式和属性值来创建复杂表达式。 接下来,创建一个条件,当该条件返回True时,表达式将执行。
-
选择 添加条件 以添加When语句。
在When语句中:
-
从Forms对象选项卡中选择或拖放第一个 放置对象中的 婚姻状况 字段,或选择此处 字段。
-
从 Select Operator 字段中选择 等于。
-
在其他 放置对象中选择String或选择此处 字段,并在 输入字符串 字段中指定 已婚。
规则编辑器中的结果如下所示。
-
-
选择 完成。 保存规则。
-
重复步骤7至14,定义另一条规则,以计算婚姻状况为“单身”的贷款资格。 规则在规则编辑器中如下所示。
或者,您可以使用设置值规则在您创建的When规则中计算贷款资格,以显示 — 隐藏“配偶薪金”字段。 当“婚姻状况”为“单身”时,生成的合并规则将在规则编辑器中显示如下。
您可以使用Else条件编写组合规则,以控制“配偶薪金”字段的可见性,并在婚姻状况为“已婚”时计算贷款资格。
规则编辑器中的自定义函数 custom-functions
除了在 函数输出 下列出的现成函数(如 总和)之外,您还可以在规则编辑器中使用自定义函数。 规则编辑器支持脚本和自定义函数的JavaScript ECMAScript 2019语法。 有关创建自定义函数的说明,请参阅文章自适应Forms中的自定义函数。
管理规则 manage-rules
选择表单对象并选择
您可以对规则执行以下操作:
-
展开/折叠:规则列表中的“内容”列显示规则内容。 如果整个规则内容在默认视图中不可见,请选择
-
重新排序:您创建的任何新规则都栈叠在规则列表的底部。 规则将从上到下执行。 顶部的规则先执行,然后是相同类型的其他规则。 例如,如果您分别将When、Show、Enable和When规则放在顶部的第一个、第二个、第三个和第四个位置,则顶部的何时规则会首先执行,然后是第四个位置的When规则。 然后,执行显示和启用规则。
您可以通过点按 -
编辑:要编辑规则,请选中规则标题旁边的复选框。 将显示用于编辑和删除规则的选项。 选择 编辑 以在规则编辑器中打开选定的规则。
-
删除:要删除规则,请选择该规则并选择 删除。
-
启用/禁用:当必须临时暂停使用规则时,您可以选择一个或多个规则,并在“操作”工具栏中选择 禁用 以禁用它们。 如果禁用某个规则,则它不会在运行时执行。 要启用已禁用的规则,可以选择该规则并选择操作工具栏中的启用。 规则的状态列显示规则是启用还是禁用。
复制粘贴规则 copy-paste-rules
您可以将规则从一个字段复制粘贴到其他类似字段,以节省时间。
要复制粘贴规则,请执行以下操作:
-
选择要从中复制规则的表单对象,然后在组件工具栏中选择
有关管理现有规则的信息,请参阅管理规则。
-
选中规则标题旁边的复选框,将显示用于管理规则的选项。 选择 复制。
-
选择要将规则粘贴到的其他表单对象,然后选择 粘贴。 此外,您可以编辑规则以对其进行更改。
note note NOTE 仅当表单对象支持复制的规则事件时,才能将规则粘贴到另一个表单对象。 例如,按钮支持click事件。 您可以将包含点击事件的规则粘贴到按钮,但不能粘贴到复选框。 -
选择 完成 以保存规则。