2013-07-24 3 views
10

Я создал базовую форму с двумя кнопками, как показано в моем примере ниже.Радиокарта «Проверено = проверено» не меняется при изменении опции

Наблюдая за рендерингом браузера, мы видим, что выбран пункт 1. Мы проверяем пункты 1 и 2.

Когда я нажимаю элемент 2, я ожидаю, что элемент 1 проверен = проверен на удаление. Я ожидаю, что элемент 2 получит атрибут checked = checked.

Это не ожидаемое поведение?

<div> 
    <span>Item 1</span> 
    <input type="radio" name="radio1" id="radio1" checked="checked" /> 
</div> 

<div> 
    <span>Item 2</span> 
    <input type="radio" name="radio1" class="checkbox" id="radio2" /> 
</div> 

http://jsfiddle.net/chrimbus/ZTE7R/1/

+0

@quentin и другие: Ваши ответы являются большими, делает это подтверждает то, что ожидаемое поведение _attribute_ «проверенного» не будет автоматически обновлять ** без использования Javascript ** – nthChild

+0

я был в состоянии? для стилирования «проверенного» переключателя и метки путем применения стилей с помощью псевдоселектора: отмечен. Это работает для IE9 +, Chrome и Firefox. http://jsfiddle.net/sXjyL/4/ – nthChild

ответ

13

checkedатрибут определяет по умолчанию переключатель установлен, а не в настоящее время проверяется один.

См. this example code. Нажмите второй переключатель, затем нажмите «Сброс». Затем снова нажмите второй переключатель, затем Переключите, затем Сбросьте.

Проверено Недвижимость даст текущий проверено состояние переключателя.

Checked attribute vs checked property

+0

ждал этого * свойства * vs * attribute * distinction :) – brbcoding

+0

@quentin Ваши ответы замечательные, подтверждает ли это тогда, что ожидаемое поведение атрибута «checked» будет не обновляется автоматически без использования Javascript? – nthChild

+0

Да. Только JavaScript может изменить проверенный * атрибут * после загрузки страницы. – Quentin

 Смежные вопросы

  • Нет связанных вопросов^_^