Я пытаюсь программно выбирать радиокнопки с jQuery, то, что я думал, будет таким же простым, как изменение атрибута checked.
Однако следующий код, похоже, не делает того, что ожидается в jQuery 1.9.1 в Chrome/Firefox.
Ожидаемое поведение: Щелкните по элементу, содержащему радиокнопку → атрибут 'checked', установленный → рендеринг, отмеченный в DOM.
Фактическое поведение:. Щелкните по элементу, включающему переключатель → 'checked', получает значение → рендер проверяется в DOM для первой и второй нажатых кнопок, последующие кнопки не отображаются как проверяется.
JQuery
$('div.form-type-radio').on('click', function () {
var Id = $(this).find('input[type=radio]').attr('id');
$('form input[type=radio]:not(#'+Id+')').removeAttr('checked');
$('#' + Id).attr('checked', 'checked');
console.log($('#' + Id));
});
Здесь jsFiddle - http://jsfiddle.net/GL9gC/
Я пробовал тот же код с предыдущими версиями jQuery, и все работает как ожидалось.