选择由类和属性选择的元素的邻居

Select neighbor of element selected by class and attribute

本文关键字:选择 邻居 元素 属性      更新时间:2023-10-10

我几乎已经完成了这项工作,但仍停留在高级选择器上。我正在尝试选择一个单选按钮旁边的标签,但它比这复杂一点。

我有一个选择框。只有单选按钮(及其同级标签)的select值与单选按钮的名称(很好地是的一部分)匹配。

我设置了一个JS小提琴,我想做的是选择一月,除了一月之外的所有东西都应该隐藏,当我选择二月时,它应该会改变。我试图只使用名称而不使用其他类来实现这一点,但如果归根结底,我可以添加它们。

http://jsfiddle.net/alpha1beta/G9Sz2/2/

下面是我的工作选择器,以获得单选按钮,现在我正在研究如何获得其旁边的+ label

$('.radio([name="insights[interview_questions[' + curr_sel + ']]"])').css('display','inline');

提前感谢!

尝试

var $radios = $('.radio'), $all = $radios.add($radios.nextUntil('.radio'));
$("#interview_month").change(function () {
    var $mon = $radios.filter('.radio[name="insights[interview_questions[' + this.value + ']]"]');
    var $cur = $mon.add($mon.nextUntil('.radio')).show();
    $all.not($cur).hide()
}).change();

演示:Fiddle

您可能需要检查next()函数,它返回下一个同级

试试这个:

$("#interview_month").change(function () {
  $('.radio , label').hide();
  var sel = '.radio[name*="' + $("#interview_month").val() + '"]';
  $(sel).add(sel+'+label').css('display', 'inline');  

});