Я обычно заключаю свои радио-кнопки в ярлык, подобный этому:
<label><input type=radio value=xyz name=stjames>Saint James</label>
Таким образом, пользователь может нажать на текст, чтобы вызвать кнопку.
Решая, как себя вести, я обычно говорю себе: «Как вы думаете, что пользователь ожидал, когда он это сделал ...», и это часто дает мне ответ. Итак, при нажатии или Фокусе текстового поля включите радио, которое идет с ним. Это не будет работать, если вы отключили текстовое поле!
( ) US ( ) UK (*) Other [________________]
Если вариант «Другой» является опасным (удаление данных), я бы отключил текстовое поле, пока пользователь явно не нажмет «Другой». Затем Радио запускает текстовое поле, а не наоборот. Вы хотите, чтобы в этом случае пользователю пришлось пройти еще один шаг. Это зависит от ситуации - подумайте, что будет происходить в каждом конкретном случае.
Я обычно стараюсь сделать невозможным или раздражающим для пользователя что-то «неправильное». Например, отключите кнопку ОК, если что-то не так. Или выберите другое радио, когда пользователь вводит текст. Если в текстовом поле есть текст, а переключатели настроены на что-то другое, я обычно просто игнорирую текст. Но если это серьезная / опасная ситуация, вы хотите убедиться, что пользователь принял решение; если вы удаляете текст, когда пользователь выбирает другое радио, это может его разозлить, но может быть уместно, если он будет осторожен.