動的なフォーム(webform)

カテゴリ フォーム コアバージョン 7.34 関連モジュール Webform

お問い合わせフォームや募集フォームのコントロールはWebformが定番ですが、Webformで動的なフォームができますか?
・項目AでAAを選択すると、関連する項目AAAを表示
・項目AでBBを選択すると、関連する項目BBBを表示
とか...

コメント

ユーザー actbrain の写真

Webform conditionalモジュールを利用することで実現します。
https://www.drupal.org/project/webform_conditional
 
Webform conditionalをインストールすると、Webformのコンポーネント設定ページに「条件付きルール」というフォームが追加されます。
以下、https://www.act-brain.co.jp/contact のページの「弊社からの連絡方法」の動き〜設定方法で説明します。
動きとしては、
弊社からの連絡方法
 □ 電話
 □ Skype
 □ メール
のチェック具合により、「電話番号」、「Skype-ID」、「メールアドレス」各々の入力フォームが表示されたり隠れたりします。
 
 
設定内容は以下のとおりです。結構簡単に実現できますので試してみてください。
 
1.「弊社からの連絡方法」コンポーネント フィールドフォームの設定
 1)オプション(選択肢)
  telephone|電話
  skype_id|Skype
  email|メール
2.「電話番号」フィールドフォームの設定
 1)条件付きルール
  ・コンポーネント=「弊社からの連絡方法」
  ・オペレータ=「いずれか」
  ・値=telephone・・・1.1)のオプションのうちtelephoneを指定
3.「Skype-ID」フィールドフォームの設定
 1)条件付きルール
  ・コンポーネント=「弊社からの連絡方法」
  ・オペレータ=「いずれか」
  ・値=skype_id・・・1.1)のオプションのうちskype_idを指定
4.「メールアドレス」フィールドフォームの設定
 1)条件付きルール
  ・コンポーネント=「弊社からの連絡方法」
  ・オペレータ=「いずれか」
  ・値=email・・・1.1)のオプションのうちemailを指定

ページ

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ Core Ver. 関連モジュール降順で並び替える タイトル
コンテンツの作成 7.38 node form ノード編集フォームをテーブル表示形式にしたい
コンテンツの作成 7.22 node Views ノードに付いたコメントに関する情報を得る
コンテンツの管理 7.15 Pagenation 一つの長いページをBookなどのように連続して読ませることはできますか?
ユーザ 7.44 Password Policy 無効なユーザーを整理したい
テーマ 8.9.x patch パッチ 開発環境のファイル変更を本番環境にパッチでデプロイする方法(画像含まず)
サイトの環境設定 7.23 Pathauto 自動生成されるURLエイリアスがおかしい
権限 7.15 Path_Access Content_Access 特定のページ(パス)をアクセス制限したい
ユーザの管理 7.50 Paypal continued billing drupal7のPaypal継続課金モジュールについて
PHP 7.22 PHP ノードに付いたコメントを好きな場所に表示する
Database 7.34 PHP データベースクエリ(SELECT)時のSQL関数
アップデート 8.9.x PHP CentosでPHPのバージョンアップ(例:5.3->5.6)を行う方法
コンテンツの作成 7.26 PHP ノード内の一部(フィールド)を変更する
ユーザ 7.23 PHP user_load_multiple()の復帰値
JavaScript 8.5.x PHP Commerce決済モジュール設定をJavaScriptにデータに渡す方法
コンテンツの管理 7.16 PHP 好きなところにノードを埋め込みたい
PHP 8.3x PHP drupa8でhook_init()する方法
ユーザの管理 7.27 PHP 新規ユーザーの追加ができない
JavaScript 7.34 PHP PHPからJavaScriptに変数値を渡したい
PHP-FPM 8.9.x PHP PHP-FPM 環境で .htaccess に php_value を 書いてもダメ
PHP 8.9.x PHP YamlをPHP配列にする方法

ページ