Должна ли всегда проверяться одна радиокнопка HTML в группе радио?

Существуют ли какие-либо стандарты (HTML, пользовательский интерфейс, доступность и т. д.), которые предусматривают, что один из переключателей в данной группе переключателей должен быть выбран всегда?

Я столкнулся с бизнес-требованием, согласно которому меня попросили оставить оба переключателя в группе неотмеченными, а затем иметь логику, заставляющую пользователя выбрать один, прежде чем они смогут продолжить.

Хотя я знаю, как этого добиться, это кажется неправильным, и я намекнул на это, но искал руководящие принципы, которые оговаривают это более явно, чтобы я мог включить это в наши собственные стандарты.


person James Wiseman    schedule 11.08.2010    source источник


Ответы (5)


Да: http://www.w3.org/TR/html401/interact/forms.html#radio

Всегда проверяется ровно одна из радиокнопок в наборе. Если ни один из элементов набора переключателей не содержит CHECKED, тогда пользовательский агент должен сначала проверить первый переключатель набора.

В спецификации используется термин "агент пользователя" для того, что обычно называют "браузером". Итак, в спецификации сказано, что если ни один из них не отмечен, браузер проверит первым.

ОБНОВЛЕНИЕ: обратите внимание, что ни один из 4-х браузеров, которые я пробовал, на самом деле не делает этого! Они не проверяют первый и ни один радиоприемник не обозначен как =on на сервер. Хорошая веб-инфраструктура должна выполнять проверку на стороне сервера (в любом случае она должна это делать, потому что прерывание или подделка POST может вызвать то же самое).

person matpol    schedule 11.08.2010
comment
Коротко и по делу, но именно то, что я хотел. Принятый ответ, потому что он ссылается на формальный стандарт, на который я могу ссылаться. Извиняюсь перед всеми остальными, хотя все полезные проголосовали. - person James Wiseman; 11.08.2010

Я собирался сказать, что читал что-то Джейкоба Нильсона в прошлом, но, черт возьми, я нашел это: PS. лично у меня ВСЕГДА один выбран по умолчанию, и так для ящиков выбора, но то, что происходит в юридических условиях, юристы боятся, конечно, вы кормите кошку своей собаке, вы всегда будете бояться котят:

Всегда предлагать выбор по умолчанию для списков переключателей. По определению, у радиокнопок всегда выбран только один параметр, и поэтому вы не должны отображать их без выбора по умолчанию. (Флажки, напротив, часто по умолчанию не выбирают ни один из вариантов.) ◦Если пользователям может потребоваться воздержаться от выбора, вы должны предоставить переключатель для этого выбора, например, с пометкой «Нет». Лучше предлагать пользователям явный, нейтральный вариант клика, чем требовать неявного отказа от выбора из списка, особенно потому, что

http://www.useit.com/alertbox/20040927.html

person Ayyash    schedule 11.08.2010

Стандарты не всегда имеют смысл

Если вы следуете стандарту (что и делает Нейлсон), то, как утверждают другие ответы, всегда следует проверять один переключатель.

Но если вы следуете здравому смыслу и проектируете варианты использования, то ответ очевидно, что нет. По бог знает какой причине стандарт полностью игнорирует очень популярный вариант использования:

Пользователь должен сделать исключительный выбор, но по умолчанию не должно существовать.

Возможно, ярким примером этого являются шкалы Лайкерта — любое значение по умолчанию поднимет участников:

Опрос лайков

Пример современного языка

Как бы вы перевели на интерфейс следующий вопрос:

Хочешь чай или кофе?

Стандарт заставляет вас спрашивать это так:

Хочешь чай или кофе? Я полагаю, это чай, который вам нужен.

А так их никто не соблюдает

Именно потому, что стандарт не учитывает такие случаи (и отсутствие удобства использования в альтернативах, таких как поля со списком с пустым параметром), ни один браузер не соответствует стандарту. Представьте себе Google Forms с переключателями, имеющими значение по умолчанию.

person Izhaki    schedule 13.11.2014
comment
Я согласен с тем, что бывают случаи, когда отсутствие опции по умолчанию имеет смысл, но я не знаю, является ли шкала Лайкерта хорошим примером. Было бы не менее «здравым смыслом», если бы в каждом случае по умолчанию выбирался «нейтральный» вариант. (Я отложу дискуссию о том, насколько вообще можно использовать шкалы Лайкерта, на другой день :) - person DA.; 13.11.2014

Каждый раз, когда вы переопределяете поведение браузера по умолчанию, вы создаете неопределенность для пользователя. Кроме того, в среднем, когда есть два варианта, вероятность того, что предварительно выбранный будет правильным, составляет 50%. Принуждение пользователя к его выбору просто замедляет его, полагая, что он либо слеп, либо невежественен.

Я бы лично счел эту концепцию оскорбительной, но ведь я не менеджер.

person SpliFF    schedule 11.08.2010
comment
подумайте об этом так: мужчина, женщина, по крайней мере, 50% вашей аудитории не должны кликать... :) - person Ayyash; 11.08.2010
comment
А остальные 50% будут раздражены тем, что по умолчанию считается другой вариант. (Я следую общему аргументу, но есть сложные вопросы, которые необходимо решать в соответствующей проблемной области. - person chryss; 11.08.2010

Одним из хороших примеров является случай, когда у вас есть интернет-магазин и вы хотите, чтобы покупатель сделал активный выбор вместо того, чтобы пропускать некоторые заказы, когда покупатель просто нажимал кнопку «Добавить в корзину», не выбирая размер, и, следовательно, получал предварительно выбранный размер.

Я ошибся?

person vemilson    schedule 02.12.2014
comment
Вот почему мы используем меню выбора размеров, а не радио. - person Billy; 04.11.2015