Я создал две радиокнопки, и для обеих радиокнопок я использовал для создания значок шрифта. Поскольку ранее я создал это как флажок и он работал правильно, я использовал тот же код для создания радиокнопок. Исправил положение; оно работает, если я перейду к флажку. Для этих радиокнопок я использовал функцию toggle() в jQuery. Но когда я использую радиокнопки, то увидел, что не могу сделать один выбор за раз.

function togperm()
{
    $("#perm").toggle();

}
function togchq()
{
    $("#chq").toggle();

}
.radiocirl {
    ширина: 20px;
    высота: 20px;
    border: 1px solid #CCCCCC;
    border-radius: 50%;
}
.bluefont{ color:rgb(0,98,168) !important; }
.shcursor{cursor: pointer;}
.f10{font-size: 1.0em !important;}




Адрес для корреспонденции
Добавить адрес

Ответы (1)

Для этого можно использовать методы .find() и .not(). Сначала вы можете найти ближайший div, который содержит обе ваши радиокнопки, затем с помощью .not() исключить div, где произошло событие нажатия, а затем просто использовать hide(), чтобы скрыть другие иконки i.

Демонстрационный код :

$(".radiocirl").on("click", function() {
  //получение тега `i`
  var selector = $(this).find(".bluefont")
  selector.toggle(); //toggle same
  //получаем ближайший div `outer` и находим тег `i` not (тот, который находится внутри div, по которому кликнули, скрывает его)
  $(this).closest(".outer").find(".bluefont").not(selector).hide()

})
.radiocirl {
  ширина: 20px;
  высота: 20px;
  border: 1px solid #CCCCCC;
  border-radius: 50%;
}

.bluefont {
  color: rgb(0, 98, 168) !important;
}

.shcursor {
  курсор: указатель;
}

.f10 {
  font-size: 1.0em !important;
}





Адрес для корреспонденции
Добавить адрес

2022 WebDevInsider