У меня есть набор переключателей, и я хотел бы сделать как кнопку, так и прикрепленный текст кликабельными (чтобы улучшить удобство использования).Невозможно программно «проверить» радиокнопку с помощью jQuery
Это должно быть очень просто, но по какой-то причине состояние переключателя не будет обновляться при запуске из jQuery. Случается, что в DOM появится атрибут checked
, но переключатель, по-видимому, не отображается (визуально).
Примечание: он отлично работает, когда я запускаю код с консоли, но когда он запускается обычно по моей функции, он не обновляется. Кроме того, этот код отлично работает для , не проверяя других переключателей в группе ... поэтому я смущен, почему он не работает в другом направлении.
Вот моя разметка:
<div class="radio-input">
<input type="radio" name="ad_category" id="cat_standard">
<span class="inline-label">Standard</span>
</div>
<div class="radio-input">
<input type="radio" name="ad_category" id="cat_reward">
<span class="inline-label">Reward</span>
</div>
и JQuery:
$(".radio-input").click(function() {
if (!$(this).children("input:radio").attr("checked")) {
$(this).siblings(".radio-input").children("input:radio").removeAttr("checked");
$(this).children("input:radio").attr("checked","checked");
}
});
Для записи вызова click()
на элементе приводит к тому же не-результат, даже если он отлично работает при запуске из консоль. Кроме того, оба .prop
и .attr
дают тот же результат (работает в консоли, не работает в обычном потоке).
... Я не знал, что эта функциональность была запечена в