Всегда ли нужно проверять одну HTML-кнопку в группе радиосвязи? - PullRequest
5 голосов
/ 11 августа 2010

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

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

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

Ответы [ 5 ]

13 голосов
/ 11 августа 2010

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

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

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

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

5 голосов
/ 11 августа 2010

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

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

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

3 голосов
/ 13 ноября 2014

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

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

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

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

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

A likert survery

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

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

Хотите чая или кофе?

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

Хотите чаю или кофе? Я верю, что это чай, который вы хотите.

И поэтому никто не подчиняется им

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

2 голосов
/ 11 августа 2010

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

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

0 голосов
/ 02 декабря 2014

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

Я не прав?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...