Javascript 如果选中输入无线电,则更改父项';s颜色:can';不能让它与jQuery一起工作

Javascript 如果选中输入无线电,则更改父项';s颜色:can';不能让它与jQuery一起工作,javascript,jquery,label,parent,radio,Javascript,Jquery,Label,Parent,Radio,当我点击一个输入收音机时,的文本应该会改变它的文本颜色 但是,我的jQuery代码没有做到这一点: $("#radios").find("input").change(function(){ if ($(this).checked) $(this).parent().addClass('libelulas'); else $(this).parent().removeClass('libelulas'); }); 我已经在chrome中与inspector进行了检查,似乎它甚至

当我点击一个
输入
收音机时,
的文本应该会改变它的文本颜色

但是,我的jQuery代码没有做到这一点:

$("#radios").find("input").change(function(){
if ($(this).checked)
    $(this).parent().addClass('libelulas');
else
    $(this).parent().removeClass('libelulas');
});
我已经在chrome中与inspector进行了检查,似乎它甚至没有在父(标签)或输入的任何位置创建类


这是我的JSFIDLE

您需要将其包装在
$(文档)中。准备好
并在
更改()事件上使用正确的选择器:

$(document).ready(function(){
  $(".radios input[type=radio]").change(function(){
      $(this).parent().addClass('libelulas');
  });
});


更新: 忘了在问题中给出与代码相关的示例,而不仅仅是JSFIDLE:

$(document).ready(function(){ 
  $(".radios input[type=radio]").change(function(){
      $(this).parent().addClass('libelulas');
      $("input[type=radio]:not(:checked)").parent().removeClass('libelulas');
  }); 
});

您需要将其包装在
$(文档)中。准备好
并在
更改()事件上使用正确的选择器:

$(document).ready(function(){
  $(".radios input[type=radio]").change(function(){
      $(this).parent().addClass('libelulas');
  });
});


更新: 忘了在问题中给出与代码相关的示例,而不仅仅是JSFIDLE:

$(document).ready(function(){ 
  $(".radios input[type=radio]").change(function(){
      $(this).parent().addClass('libelulas');
      $("input[type=radio]:not(:checked)").parent().removeClass('libelulas');
  }); 
});

@Fabián Oops抱歉,我的答案中只包含了你的JSFIDLE代码,而不是你问题中的代码。没关系,那代码让我想到了如何正确地完成它。现在它工作了,这才是重要的:)@Fabián Oops抱歉,我的答案中只包含了你的JSFIDLE代码,而不是你问题中的代码。没关系,那代码让我想到了如何正确地完成它。现在它起作用了,这才是最重要的:)