メインコンテンツまでスキップ

ページ分割 (マルチステップ)

長いフォームを複数のページ (ステップ) に分け、「次へ」「戻る」で移動しながら入力してもらえます。進捗表示も付けられます。

入力途中のデータはブラウザの中で保持されるため、ページを移動してもサーバーとの通信は発生しません。送信・入力チェック・保存・メールの動きは、1 ページのフォームと変わりません。

ページを分ける​

  1. フォーム編集画面の 「フィールド設定」 タブで 「+ フィールドを追加」 をクリックします
  2. 「ページ区切り」 を選びます
  3. ラベル に、この区切りの後ろから始まるページのタイトル を入力します
  4. 区切りを入れたい位置にドラッグして並べ替えます
  5. フォームを保存します

ページ区切りを 1 つ置くと 2 ページ、2 つ置くと 3 ページになります。フォームの先頭や末尾、区切りが連続している場所にできる 空のページは自動的に詰められます。

設定​

「フォーム設定」→「設定」 タブの 「ページ分割」 で、フォーム全体の見え方を設定します。

項目内容
進捗表示ステップ (番号とページタイトル) / プログレスバー / なし から選びます
1 ページ目のタイトル1 ページ目には区切りが無いため、ここでタイトルを指定します。空欄なら番号だけが表示されます
確認ステップのタイトル入力すると、進捗表示の最後に確認画面のステップが追加されます。空欄なら追加されません
「次へ」ボタンのテキスト空欄なら「次へ」
「戻る」ボタンのテキスト空欄なら「戻る」

ページ区切りを 1 つも置いていないフォームでは、このカードに「まだページ区切りがありません」という案内が表示され、設定は反映されません。

「入力 → 確認 → 完了」の段階表示

確認ステップのタイトル に「確認」などと入力すると、進捗表示が「1. お客様情報 → 2. ご依頼内容 → 3. 確認」のようになり、確認画面の上にも同じ進捗表示が出ます。フォームの確認画面が無効の場合、この設定は無視されます。

入力チェックのタイミング​

操作動き
「次へ」そのページの項目だけ をその場でチェックします。エラーがあればページに留まり、最初のエラーまでスクロールします
「戻る」入力チェックは行いません
確認画面へ進む / 送信従来どおり、すべてのページの項目 をサーバー側でチェックします

サーバー側のチェックで 別のページの項目にエラーがあった場合、エラーのある最初のページへ自動的に移動 します。独自の検証ルールを PHP で追加している場合も、そのエラーは正しいページに表示されます。

入力欄で Enter キーを押したとき

最終ページ以外で Enter キーを押しても、フォームは送信されません。「次へ」を押したときと同じ動きになります。

確認画面・送信完了との関係​

  • 確認画面は 最終ページの次 に表示されます。無料版の確認画面の設定がそのまま使われます
  • 確認画面の「戻る」を押すと、最終ページ に戻ります。入力内容や選択したファイルはそのまま残ります
  • 送信が完了すると、フォームは 1 ページ目 に戻ります

他の機能との組み合わせ​

組み合わせ動き
条件分岐条件で隠れている項目は「次へ」のチェック対象になりません。ページごとスキップすることはできません
フィールドグループ / リピーターページの中に置けます。行の中のエラーも、そのページに正しく表示されます
受付制御組み合わせて使えます。受付を締め切っている間はフォーム自体が表示されません
ファイルアップロードファイルは送信時にまとめてアップロードされます。前のページに戻っても選択は解除されません
スパム対策 (reCAPTCHA など)最終ページに表示されます

アクセシビリティ​

  • 進捗表示は クリックしてもページ移動しません。移動は「次へ」「戻る」で行います
  • ページを移動すると、「ステップ 2 / 3: ご依頼内容」のような案内が読み上げ用に通知されます
  • 入力欄への自動フォーカスは行いません (スマートフォンでキーボードが開くのを避けるため)

HTML テンプレートを使っている場合​

入力画面 HTML テンプレート でレイアウトを自作している場合、次の点に注意してください。

  • 区切りは [fplant_field name="page_break_1"] と書いた位置に出ます。すべての区切りを同じ親要素の直下 に置いてください
  • 表の行の間に区切りは置けません。 表を使う場合は 1 ページにつき 1 つの表 にしてください
  • 送信ボタンを、ページ内の項目と同じ要素の中に入れないでください。 入れるとその要素ごと最終ページ扱いになります
  • 進捗表示を出したい位置に <div class="fplant-pro-progress"></div> を書いておくと、そこに表示されます。書かない場合は 1 ページ目の先頭に自動で挿入されます

埋め込みでの利用​

iframe 埋め込み ではそのまま動作します。ページによって高さが変わる場合、iframe の中でスクロールします。

JavaScript 埋め込み (外部サイト向けスニペット) では動作しません。

制限事項​

  • 条件分岐による ページごとのスキップ には対応していません
  • 入力の 途中保存・再開 には対応していません
  • ブラウザの「戻る」ボタンでは前のページに戻れません (フォームのあるページから離脱します)
  • 進捗表示のステップをクリックしてページを移動することはできません
  • 「次へ」ボタンの文言はフォーム単位の設定です。ページごとに変えることはできません
  • グループ / リピーターの中にページ区切りを置くことはできません