Documentation

フォームルールの概要

フォームは、1つの質問に対する回答でフォームの残りの部分が変化するような、動的なものにすることができます。 1つの回答で次の3つの質問をスキップできる場合や、追加の質問に答えなければならない場合などが考えられます。 このようなフィールドは、 条件付きフィールド と呼ばれます。 どのフィールドを条件付きにするかを決めたら、フォームルールを使って、その質問に対する回答に基づいて次のアクションを決定します(例えば、複数ページのフォームでは、3ページ目をスキップして4ページ目に進むなど)。

Liferay 7.4以降では、 フォームフィールド は非表示にすることも可能です。 つまり、データプロバイダーが非表示フィールドにデータを入力し、その非表示フィールドをルールで使用して動的にフォームを変更できるのです。

フォームルールの条件とアクション

ルールには2つの要素があります。

  • 条件 は、アクションが実行されるかどうかを決定します。

  • アクション は、条件を満たした場合の動作を決定します。

注釈

ルールはデフォルトではJSON形式でデータベースに保存されます。

ユーザーは OR または AND を選択して、複数の条件の間の関係を定義することができます。

  • OR : 指定した条件の いずれかtrue と評価された場合、アクションがトリガーされます。

  • AND : 指定した すべて の条件が true と評価された場合にのみ、アクションがトリガーされます。

ORとANDを使って、アクションの条件を定義します。

ルールビルダーへのアクセス

  1. フォームルールを適用するフォームに移動します。

  2. Rules] タブをクリックします。

    [Rules]タブをクリックします。

  3. 追加 ボタン(Add)をクリックして開始します。

条件の指定

ルールを構築する際には、フィールド(例えば、 あなたは18才以上ですか?)、条件(と等しい)、比較する値(はい/いいえ)を指定する必要があります。 条件の ifステートメントtrue であれば、アクションがトリガーされます。 false の場合は何も起こりません。

条件

Description

と等しい

入力された値が条件と一致するかどうかをチェックします。 例:言語がスペイン語と一致した場合、アクションをトリガーします。

等しくない

入力された値が条件と一致していないかどうかをチェックします。

含む

入力された値が、その値を含んでいるかどうかをチェックします。

含まない

入力された値が、その値を含んでいないかどうかをチェックします。

が空の場合

フィールド が空で ある かどうかをチェックします。

は空ではない

フィールドが空 でない 限り、アクションを実行します。

ユーザー

ユーザーが特定のロールに所属しているかどうかを確認します。 Yesの場合、アクションがトリガーされます。

フォームルールアクション

次のアクションを使用できます。

次のアクションを使用できます。

操作

説明

表示

あらかじめ定義された条件に基づいて、フォームフィールドの可視性を設定します。

有効にする

定義済みの条件を使用して、フィールドを有効または無効にします。

必須

定義済みの条件を使用して、フィールドを必須にします。

ページへ移動

ユーザーの入力内容に応じて、一部のフォームページをスキップして関連するページに直接移動します。 このルールは、2番目のページがフォームに追加されるまで、ルールビルダーに表示されません

データプロバイダーによる自動入力

データプロバイダーを使用して、別のフィールドで条件が満たされたときにフィールドに値を入力します。

計算

他のフィールドに入力されたデータを使って、フィールドに計算値を入力します。