検証とマスキング
フォームの一部のフィールドでは、テキスト、日付、数値のフィールドを検証したり、数値フィールドをマスキングし、ユーザーの入力が有効であることを確認できます。
日付フィールドは Liferay 7.4 から検証できるようになりました。
入力検証を有効にして、特定の値のみがテキストまたは数値フィールドで受け入れられるようにします。
フィールド検証の有効化
検証を有効にするには:
フォームを表示しているときに、テキスト、数値フィールドまたは日付フィールドをクリックして、フィールド構成メニューを開きます。
[Advanced] タブをクリックします。
検証を有効にするには、 [Validation] トグルを右に切り替えます。
検証が有効になったら、設定を行います。 例えば、テキストフィールドでは、 [Accept If Input] の条件と [Error Message] で検証がどのように失敗したか指定できます。
フィールド検証ルールは、ユーザーが検証済みのフォームフィールドから離れる(例えば、他のフィールドをクリックするなどして)とすぐにトリガーされます。
テキストフィールドの検証
その他の検証条件の詳細は、 検証条件リファレンス を参照してください。
メールアドレスの検証
メールアドレスを検証するようにフォームを設定できます。 ユーザーが有効なメールアドレスを入力したことを確認するには:
[Accept If Input] ドロップダウンから [Is an email] 条件を選択します。
エラーメッセージを [エラーメッセージ] フィールドに入力します。有効なメールアドレスを入力してください。
完了したら、 [保存] をクリックします。
URLの検証
メールと同様に、フォームはURLを検証するように構成できます。
URLを検証するには:
- [Accept If Input] ドロップダウンから [Is a URL] 条件を選択します。
- エラーメッセージを入力します。
- 完了したら、 [保存] をクリックします。
正規表現の使用
フォームは、 正規表現 を使用してカスタム検証基準を作成するように構成できます。 たとえば、次の正規表現を使用して、電話番号フィールドに10桁の連続した数字が入力されるようにします。
^[0-9]{10}$
正規表現を使用してテキストフィールドを検証するには:
[Accept If Input] ドロップダウンメニューから [Matches] 条件を選択します。
正規表現を入力します。
[Error Message] フィールドにエラーメッセージを入力します。
完了したら、 [フォームを保存] をクリックします。
数値フィールドの検証
数値フィールドの検証はテキストフィールドの検証に似ていますが、条件は入力された数値の値を他の値と比較します。
数値フィールドを検証するには:
[Accept If Input] ドロップダウンメニューから希望の条件を選択します(例: Is greater than)。
制限となる数値(10)を入力します。
[Show Error Message] フィールドにエラーメッセージを入力します。
完了したら、 [フォームを保存] をクリックします。
整数のみが必要
数値が整数であることを要求するようにフォームを構成できます。 デフォルトでは、 [My numeric type is] の値は[Decimal]に設定されています。
整数のみを受け入れるように数値フィールドを構成するには:
フォームを表示しているときに、数値フィールドをクリックしてフィールド構成メニューを開きます。
[Basic] タブで、 [Integer] ラジオボタンをクリックします。
変更を適用するには、 [フォームを保存] をクリックします。
データフィールドの検証
Liferay 7.4では、日付フィールドの詳細設定に入力値の検証が含まれています。
入力値の検証のオプションは以下の通りです。
受け入れられた日付: 選択された日付が、未来の日付、過去の日付、または指定された範囲であることを要求します。
開始日と終了日 未来の日付の場合は、デイトピッカーの開始日の日付を定義します。 過去の日付については、終了日を定義します。 日付ピッカーが応答日(ユーザーがフォームに入力する日付)を使用するか、この値のカスタム日付を使用するかを構成します。 日付範囲の検証には、開始日と終了日の両方が設定されている必要があります。
エラーメッセージ: エラーメッセージは、特定の検証ルールに合わせてカスタマイズできます。
数値フィールドのマスキング
入力マスク設定では、ユーザーが数値データを入力する際に、正しい数値フォーマットを表示することができます。 整数フィールドと10進数フィールドでは、コンフィギュレーションの動作が異なります。
整数フィールドのマスク:フォーマットを設定します。 2番目のエントリである文字オプションは、フォーマットを定義するために使用される文字の動作に関する追加のガイダンスを提供する読み取り専用のフィールド設定です。
10進数フィールドのマスク:千値セパレーター、少数セパレーター、小数位、プレフィックスまたはサフィックスの設定を行います。 1000区切りセパレータースタイルは、
None
、1,000
、1.000
または1 000
に設定できます。 少数セパレーターのスタイルは、0.00
または0,00
に設定できます。 プレフィックスまたはサフィックス。 小数位の設定で、小数点以下の桁数の制限を指定します。 プレフィックスまたはサフィックスは通常、10進数の単位を定義するために使用されます。 例えば、ユーザーがドルを入力することを前提としたフィールドには、$
をプレフィックスとして使用します。