Есть вот такая часть формы:
<label class="radio-inline">
<input type="radio" name="admin" value="t" id="adminTrue"> Да
</label>
<label class="radio-inline">
<input type="radio" name="admin" value="f" id="adminFalse"> Нет
</label>
Эта форма находиться в модальном блоке DIV, который вызывается кнопкой. Но этих кнопок целая орда, а модальная форма одна, в которую я вставляю данные в зависимости от нажатой кнопки.
НО возникла проблема, если для различных кнопок различные переключатели, то возникает некий баг, убираются параметры checked из формы, если сначала был выбрал #adminTrue, потом #adminFalse и если снова вернуться к #adminTrue отметка checked теряется вообще.
Вот такой JS для работы с радио кнопками у меня написан:
if (admin == 't') {
modal.find('input[id="adminTrue"]').attr('checked', 'checked');
modal.find('input[id="adminFalse"]').removeAttr('checked');
} else {
modal.find('input[id="adminFalse"]').attr('checked', 'checked');
modal.find('input[id="adminTrue"]').removeAttr('checked');
}
Как исправить проблему?
Проблему решил немного по другому.
Сам выбор радио кнопки сделал проще:
if (admin == 't') {
modal.find('input[id="adminTrue"]').attr('checked', 'checked');
} else {
modal.find('input[id="adminFalse"]').attr('checked', 'checked');
}
Но добавил в обработчик события закрытия модальной формы следующий код:
modal.find('input[name="admin"]').removeAttr('checked');
Тогда все в теории стало работать верно, но встал другой вопрос, почему-то браузеры стали отображать не корректно выделенные радио, вернее вообще не отображать.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости