Javascript 为复选框和下拉列表添加或删除类

Javascript 为复选框和下拉列表添加或删除类,javascript,jquery,ruby-on-rails,checkbox,Javascript,Jquery,Ruby On Rails,Checkbox,我在变更事件中向元素添加和删除类。下面的代码适用于下拉按钮和单选按钮,但不适用于复选框和下拉按钮。禁用类将被应用,但取消选中时,它不会被启用 $(function() { $switchers.each(function(index, elem) { $(elem).prop("disabled", false).removeClass("c_disabled") .closest(".wrapper") .find(".overlay").remov

我在变更事件中向元素添加和删除类。下面的代码适用于下拉按钮和单选按钮,但不适用于复选框和下拉按钮。禁用类将被应用,但取消选中时,它不会被启用

$(function() {
  $switchers.each(function(index, elem) {
    $(elem).prop("disabled", false).removeClass("c_disabled")
        .closest(".wrapper")
        .find(".overlay").remove();

    if ($(elem).prop('tagName') == 'SELECT') {          
        $(elem).children().removeClass('dis').removeAttr('disabled');
    }
  });
我怎样才能使它工作为复选框的检查,取消选中

例如,如果您在选中C3时看到my,则下拉选项2将被禁用,但当您取消选中它时,它不会再次被启用,当您取消选中其他复选框时,它将被启用

这是什么原因?当我有一个收音机和下拉菜单的组合,它的工作

我希望在取消选中C3后启用它

它与复选框被多重选择的点有关吗

我可以用下面的代码检查选项是否被选中

    $(".checkdrop").on("change", function(e) {
  var $this = $(this);
      var ischecked = e.target.checked;
      if(ischecked) {
        alert("checked it");

      }
      else
      {
        alert("unchecked it");

       //$(elem).removeClass('c_disabled').removeAttr('disabled');
      } 
});
这是我的


请帮助。

这些线路正在自行工作。你可以在控制台上查看

 $(".c_disabled").prop("disabled",false);
 $(".c_disabled").removeClass("c_disabled");

下面的代码适用于下拉按钮和单选按钮,但不适用于复选框和下拉按钮。它是否适用于下拉菜单?因此,当某个下拉菜单选项被禁用时,选中并取消选中它将被启用。我们选中了无线电选项,但没有什么叫做取消选中,而我们可以选中取消选中复选框。希望我能解释这个案子当然,谢谢。对这个问题有什么想法吗?我已经更新了我的答案。请检查它并以您的方式应用于您的代码。您确定这有效吗?不为我工作?你能把这个放在小提琴里看看吗?不在那里工作。当您单击C3时,它会禁用两个,但在取消选中时不会重新启用它。这就是我想要实现的哦,对不起,再次更新了我的回复。我已经在控制台上测试了它的工作原理。你的问题可能是算法。