Тип питання select_one спонукає респондента вибрати рівно один варіант із заздалегідь визначеного списку. За замовчуванням варіанти відображаються як радіокнопки, але доступний широкий діапазон параметрів appearance для зміни макету та поведінки.

Базова специфікація XLSForm

Таблиця survey:

typenamelabel
select_one yesnoconsentDid the respondent give consent?

Таблиця choices:

list_namenamelabel
yesnoyesYes
yesnonoNo

listname у select_one listname повинен відповідати стовпцю list_name у таблиці choices.

Для отримання додаткових відомостей дивіться специфікацію XLSForm.

Використання

Питання select_one використовуються для:

  1. Питань Yes/No
  2. Вибору однієї відповіді з кількох (наприклад, рівень освіти, стать, сімейний стан)
  3. Категоріальних рейтингів (наприклад, поганий / задовільний / хороший / відмінний)
  4. Каскадних (пов’язаних) виборів, де варіанти фільтруються на основі попередньої відповіді
  5. Вибору країни, регіону, району або іншої адміністративної одиниці

Параметри appearance

Вкажіть значення у стовпці appearance для зміни відображення варіантів:

AppearanceОпис
(none)Радіокнопки за замовчуванням, по одній на рядок
minimalОдиночний випадаючий список замість радіокнопок
quickАвтоматичний перехід до наступного питання відразу після вибору (лише мобільний)
compactКомпактна сітка варіантів — кількість стовпців адаптується до ширини екрана
compact-NКомпактна сітка, примусово N стовпців (наприклад, compact-3)
quickcompactПоєднує quick та compact
quickcompact-NПоєднує quick та compact з N примусовими стовпцями
horizontalВаріанти розташовані в горизонтальний рядок (веб)
horizontal-compactГоризонтальне, компактне розташування (веб)
likertРядок шкали Лайкерта — мітки вгорі, радіокнопки внизу
labelПоказує лише мітки варіантів без полів введення (використовується у парі з list-nolabel)
list-nolabelПоказує лише поля введення без міток (використовується у парі з label)
columns(N)Відображення в N стовпцях (розширення rtSurvey, наприклад, columns(3))
distressВіджет емоційних піктограм Психологічного дистресу Кесслера (K10)
search-api(...)Динамічний пошук — завантажує варіанти з API під час виконання

Приклад: Шкала Лайкерта

typenamelabelappearance
select_one satisfactionservice_ratingHow satisfied are you with the service?likert

Приклад: Компактно 3 стовпці

typenamelabelappearance
select_one regionsregionSelect regioncompact-3

Каскадні вибори

Каскадний (пов’язаний) вибір фільтрує варіанти на основі значення, обраного в попередньому питанні. Використовуйте стовпець choice_filter з назвою стовпця з таблиці choices.

Таблиця survey:

typenamelabelchoice_filter
select_one provinceprovinceSelect province
select_one districtdistrictSelect districtprovince_name = ${province}

Таблиця choices:

list_namenamelabelprovince_name
provincenairobiNairobi
provincemombasaMombasa
districtwestlandsWestlandsnairobi
districtkasaraniKasaraninairobi
districtnyaliNyalimombasa
districtlikoniLikonimombasa

Коли респондент обирає nairobi, у списку районів з’являються лише Westlands та Kasarani.

Використання обраного значення у виразах

Посилайтеся на обране значення (не мітку) за допомогою ${fieldname}:

  relevant: ${consent} = 'yes'
  

Щоб отримати мітку варіанту замість значення, використовуйте choice-label():

  calculate: choice-label(${education_level}, ${education_level})
  

Варіант “Інше” з вільним текстом

Поширений шаблон — включити варіант “інше”, що відкриває текстове поле:

typenamelabelrelevant
select_one occupationjobWhat is your occupation?
textjob_otherPlease specify${job} = 'other'

Таблиця choices:

list_namenamelabel
occupationfarmerFarmer
occupationtraderTrader
occupationstudentStudent
occupationotherOther (please specify)

Найкращі практики

  1. Тримайте списки короткими та взаємовиключними — якщо респонденти можуть хотіти більше одного, використовуйте select_multiple.
  2. Розміщуйте найпоширеніший варіант першим або впорядковуйте алфавітно для довгих списків.
  3. Завжди включайте варіант “Не знаю” або “Відмовляюся відповідати”, де це доречно.
  4. Використовуйте minimal (випадаючий список) для списків з більше ніж 7–8 варіантами на мобільному для економії місця на екрані.
  5. Для каскадних виборів додайте всі стовпці фільтрів у таблиці choices перед побудовою форми.

Обмеження

  • Респондент може вибрати лише один варіант — використовуйте select_multiple для питань з кількома відповідями.
  • Appearance likert найкраще працює з 5–7 варіантами, що вміщуються на одному рядку.
  • Автоматичний перехід quick є лише для мобільного; він не має ефекту у веб-формах.
Чи була ця сторінка корисною?