On this page
radio_button_checked
Select_one
Select_one質問タイプは回答者が定義済みの選択肢リストから1つのオプションを選択できるようにします。
select_one質問タイプは、回答者が定義済みのリストからちょうど1つのオプションを選択するように促します。デフォルトではラジオボタンとして表示されますが、レイアウトと動作を変更するための豊富な外観オプションが利用できます。
基本XLSForm仕様
surveyワークシート:
| type | name | label |
|---|---|---|
| select_one yesno | consent | 回答者は同意しましたか? |
choicesワークシート:
| list_name | name | label |
|---|---|---|
| yesno | yes | はい |
| yesno | no | いいえ |
select_one listnameのlistnameはchoicesワークシートのlist_name列と一致しなければなりません。
詳細についてはXLSForm仕様を参照してください。
用途
Select_one質問は以下に使用されます:
- はい/いいえの質問
- 単一回答の選択肢(例:学歴、性別、婚姻状態)
- カテゴリ評価(例:悪い / 普通 / 良い / 優秀)
- 前の回答に基づいて選択肢がフィルタリングされるカスケード(リンク)選択
- 国、地域、地区、その他の行政単位の選択
外観オプション
appearance列に値を指定して選択肢の表示方法を変更します:
| 外観 | 説明 |
|---|---|
| (なし) | デフォルトのラジオボタン、1行に1つ |
minimal | ラジオボタンの代わりに単一のドロップダウン/スピナー |
quick | 選択後すぐに次の質問に自動進行(モバイルのみ) |
compact | コンパクトな選択肢グリッド — 画面幅に応じて列数を調整 |
compact-N | N列に強制されたコンパクトグリッド(例:compact-3) |
quickcompact | quickとcompactを組み合わせ |
quickcompact-N | N列固定のquickとcompactの組み合わせ |
horizontal | 水平行に配置された選択肢(Web) |
horizontal-compact | 水平、コンパクトスペーシング(Web) |
likert | リッカートスケール行 — 上にラベル、下にラジオボタン |
label | 入力なしで選択肢ラベルのみを表示(list-nolabelとペアで使用) |
list-nolabel | ラベルなしで入力のみを表示(labelとペアで使用) |
columns(N) | N列で表示(rtSurvey拡張、例:columns(3)) |
distress | Kessler心理的苦痛(K10)感情アイコンウィジェット |
search-api(...) | ダイナミック検索 — 実行時にAPIから選択肢を読み込む |
例:リッカートスケール
| type | name | label | appearance |
|---|---|---|---|
| select_one satisfaction | service_rating | サービスにどれくらい満足していますか? | likert |
例:コンパクト3列
| type | name | label | appearance |
|---|---|---|---|
| select_one regions | region | 地域を選択してください | compact-3 |
カスケード選択
カスケード(リンク)選択は、前の質問で選択された値に基づいて選択肢をフィルタリングします。choice_filter列にchoicesワークシートの列名を使用します。
survey:
| type | name | label | choice_filter |
|---|---|---|---|
| select_one province | province | 県を選択してください | |
| select_one district | district | 地区を選択してください | province_name = ${province} |
choices:
| list_name | name | label | province_name |
|---|---|---|---|
| province | nairobi | Nairobi | |
| province | mombasa | Mombasa | |
| district | westlands | Westlands | nairobi |
| district | kasarani | Kasarani | nairobi |
| district | nyali | Nyali | mombasa |
| district | likoni | Likoni | mombasa |
回答者がnairobiを選択すると、地区リストにはWestlandsとKasaraniのみが表示されます。
choice_filterで使用される列名(例:province_name)はchoicesワークシートに存在しなければなりません。${province}はprovinceという名前のsurveyフィールドを参照します。
式で選択された値を使用する
選択された値(ラベルではなく)を${fieldname}で参照します:
relevant: ${consent} = 'yes'
値の代わりに選択肢ラベルを取得するには、choice-label()を使用します:
calculate: choice-label(${education_level}, ${education_level})
テキストフィールド付きの「その他」オプション
一般的なパターンは、テキストフィールドを表示する「その他」オプションを含めることです:
| type | name | label | relevant |
|---|---|---|---|
| select_one occupation | job | あなたの職業は何ですか? | |
| text | job_other | 詳細を指定してください | ${job} = 'other' |
choices:
| list_name | name | label |
|---|---|---|
| occupation | farmer | 農業 |
| occupation | trader | 商業 |
| occupation | student | 学生 |
| occupation | other | その他(詳細を指定してください) |
ベストプラクティス
- リストを短く相互に排他的に保ってください — 回答者が複数を選びたい場合は
select_multipleを使用してください。 - 最も一般的な回答を最初に置くか、長いリストではアルファベット順に並べてください。
- 関連する場合は常に「わからない」または「回答しない」オプションを含めてください。
- モバイルで画面スペースを節約するために、7〜8個以上の選択肢があるリストには
minimal(ドロップダウン)を使用してください。 - カスケード選択の場合は、フォームを構築する前にchoicesワークシートのすべてのフィルター列を追加してください。
制限事項
- 回答者は1つの選択肢しか選べません — 複数回答の質問には
select_multipleを使用してください。 likert外観は1行に収まる5〜7個の選択肢で最もよく機能します。quick自動進行はモバイルのみです;Webフォームには効果がありません。
このページは役に立ちましたか?