On this page
eye-slash
Hidden
hiddenフィールドは回答者に表示されない値を格納します。コンテキストの引き渡し、データの事前入力、または中間結果の保存に使用されます。
hiddenフィールドは回答者に表示されない値を格納します。calculate(値を計算する)とは異なり、hiddenは外部から提供された値を保持するために使用されます。たとえば、タスクID、別のシステムから渡された世帯ID、フォームが起動されたときに注入された調査員コードなどです。
基本XLSForm仕様
| type | name | label |
|---|---|---|
| hidden | household_id |
ラベルは、画面に何もレンダリングされないため、hiddenフィールドには必要ありません。
用途
Hiddenフィールドは一般的に以下に使用されます:
- 調査管理システムからの事前割り当てIDの引き渡し(例:世帯ID、ケース番号、タスクコード)
- フォームバージョンまたはデプロイメントメタデータの保存
- フォーム起動時の調査員固有の設定の注入
- リンクされたワークフローで親フォームから子フォームへのデータの引き渡し
- フォームがWebリンク経由で開かれたときのURLパラメーターから取得した値の保存
デフォルト値の設定
最も一般的なパターンは、フォームが開いたときに値が設定されるようにdefault式と共にhiddenを使用することです:
| type | name | default |
|---|---|---|
| hidden | deployment_code | ‘ZONE_A_2024’ |
| hidden | form_version | ‘3.1’ |
計算でのhiddenフィールドの参照
Hidden値は${fieldname}を使用して他のフィールドと同様に参照できます:
| type | name | label | calculation |
|---|---|---|---|
| hidden | zone_code | ||
| calculate | label_prefix | concat(’[’, ${zone_code}, ‘] ‘) | |
| note | intro | ${label_prefix} 世帯調査へようこそ |
prefill / URLパラメーターでのhiddenの使用
URLを介してWebフォームを起動する際に、hiddenフィールドに値を渡すパラメーターを指定できます。これにより、調査員が入力せずに世帯IDやタスクコードを事前入力できます:
https://your-server.com/form/FORMID?household_id=H00123&zone_code=NORTH
household_idという名前のフィールドは自動的にH00123に設定されます。
ベストプラクティス
- 値が外部から注入される場合(再計算されるべきでない場合)は
calculateではなくhiddenを使用してください。 - 値がフォーム内の他のフィールドから導出される場合は
calculateを使用してください。 - hiddenフィールドに値が必要な場合は必ず
defaultを設定してください。デフォルトのないhiddenフィールドは空になります。 - hiddenフィールドを区別するために明確な名前を付けてください(例:
_hidden_プレフィックスまたは一貫した命名規則の使用)。
制限事項
- Hiddenフィールドは他のフィールドと同様に、エクスポートされたデータに含まれます。
- 条件付きで表示することはできません — 常に存在しますが非表示です。
- 動的に計算するフィールドが必要な場合は、代わりに
calculateを使用してください。
このページは役に立ちましたか?