Диапазон
Вопросы типа range позволяют респондентам выбирать число с помощью ползунка в заданном диапазоне минимального и максимального значений.
Тип вопроса range отображает ползунок (или аналогичный элемент ввода), позволяющий респондентам выбирать число в заданных минимальном и максимальном значениях. Он идеально подходит для сбора рейтингов, показателей удовлетворённости или любых числовых значений, где нужно визуально ограничить диапазон, не полагаясь на текстовый ввод с ограничениями.
Базовая спецификация XLSForm
| type | name | label | parameters |
|---|---|---|---|
| range | satisfaction | Насколько вы удовлетворены обслуживанием? | start=1 end=5 step=1 |
Столбец parameters определяет границы ползунка и шаг:
| Параметр | Описание | По умолчанию |
|---|---|---|
start | Минимальное значение (включительно) | 0 |
end | Максимальное значение (включительно) | 10 |
step | Шаг между допустимыми значениями | 1 |
Дополнительную информацию о стандартном типе вопроса range см. в спецификации XLSForm.
Применение
Вопросы типа range обычно используются для:
- Шкал удовлетворённости или оценок (например, 1–5 или 0–10)
- Числовых шкал типа Лайкерта
- Сбора измерений, где допустимы только дискретные значения
- Возрастных диапазонов или диапазонов оценок, где ползунок удобнее текстового поля
Примеры использования
Базовая шкала оценок
| type | name | label | parameters |
|---|---|---|---|
| range | overall_rating | Общая оценка (0–10) | start=0 end=10 step=1 |
Дробный шаг
| type | name | label | parameters |
|---|---|---|---|
| range | weight_kg | Вес (кг) | start=0 end=200 step=0.5 |
Использование значения в вычислении
| type | name | label | parameters | calculation |
|---|---|---|---|---|
| range | score | Тестовый балл (0–100) | start=0 end=100 step=5 | |
| calculate | grade | if(${score} >= 90, ‘A’, if(${score} >= 80, ‘B’, if(${score} >= 70, ‘C’, ‘F’))) | ||
| note | grade_note | Ваша оценка: ${grade} |
Внешний вид
Тип range по умолчанию отображается как ползунок. Для базового использования дополнительные значения внешнего вида не требуются. Можно комбинировать с horizontal для более широкого макета в веб-формах:
| type | name | label | parameters | appearance |
|---|---|---|---|---|
| range | nps | Насколько вероятно, что вы порекомендуете нас? (0–10) | start=0 end=10 step=1 | horizontal |
Лучшие практики
- Всегда задавайте значимые значения
start,endиstep— не полагайтесь на значения по умолчанию. - Подписывайте концы шкалы в столбце
hint(например,hint: 0 = Очень неудовлетворён, 10 = Очень удовлетворён). - Для 5-балльных шкал Лайкерта используйте
start=1 end=5 step=1, а не 0–4, поскольку респонденты ожидают, что “1” означает наименьшее. - Используйте
rangeвместоintegerс ограничением, когда ограниченность ввода является частью дизайна вопроса (ползунок визуально передаёт шкалу).
Ограничения
- Виджет ползунка может не подходить для очень широких диапазонов (например, 0–10000) — текстовый
integerс ограничениями удобнее в таких случаях. - На мобильных устройствах небольшие значения шага (например,
step=0.1) сложно точно установить с помощью сенсорного ползунка.