Я использую bootstrap radio buttons и хотел бы разрешить отмену радиогруппы. Это можно сделать, используя дополнительную кнопку (Fiddle). Однако вместо дополнительной кнопки я хотел бы отключить выбранный параметр радио, если эта опция нажата, когда она активна.Отменить выбор радиостанции
Я попытался это
$(".btn-group label").on("click", function(e) {
var clickedLabel = $(this);
if ($(clickedLabel).hasClass("active"))
{
// an active option was clicked => deselect it
$(clickedLabel).children("input:radio").prop("checked", false)
$(clickedLabel).removeClass("active");
}
}
)
, но там, кажется, состояние гонки: событие, нажав на ярлык, который я использую, кажется, используется bootstrap.js установить щелкнул вариант этикетки для «активного ». Если я ввести тайм-аут, класс «активный» удаляется успешно:
$(".btn-group label").on("click", function(e) {
var clickedLabel = $(this);
if ($(clickedLabel).hasClass("active"))
{
setTimeout(function() {
// an active option was clicked => deselect it
$(clickedLabel).children("input:radio").prop("checked", false)
$(clickedLabel).removeClass("active");
}, 500)
}
}
)
Как переключить выбранный вариант успешно без использования тайм-аута ?? Спасибо за помощь.
Смотрите http://stackoverflow.com/questions/17120576/how-to-uncheck-checked-radio-button – Chris
Криса, это работает для обычных переключателей, а не для кнопок начальной загрузки (они имеют метку вокруг ввода). – peter