JQuery只切换最接近它的相关div

我有一些类似的div,我正在使用这样的一些基本代码切换:

$(".field-group-format-toggler-abstract").click(function() { $(".field-group-format-wrapper").toggle(); }); 

我遇到的问题是每当我触发“+”时,当我只想切换最接近它的相关div时,它会切换所有其他具有相同类的div .field-group-format-wrapper 。 我试过.next和.closest,但这似乎锁定了事情然后它不起作用我没有得到语法错误,例如

 $(".field-group-format-toggler-abstract").click(function() { $(".field-group-format-wrapper").closest().toggle(); }); 

我在这里创建了一个工作版本,但如果你像我上面那样添加.closest,它就不再起作用了。

http://jsfiddle.net/LHguJ/5/

**注意,我只想显示/隐藏field-group-format-wrapper而不是其他内容,因此“Title”仍然需要显示是否展开。

你想要的是兄弟姐妹() 。 并使用它来引用被点击的元素。 你正在使用最近的,寻找最近的() ‘父’。

 $(".field-group-format-toggler-abstract").click(function() { $(this).siblings(".field-group-format-wrapper").toggle(); });​ 

http://jsfiddle.net/LHguJ/11/

您可以像这样使用nextAll()

的jsfiddle

 $(".field-group-format-toggler-abstract").click(function(){ $(this).nextAll(".field-group-format-wrapper").toggle(); }); 

jQuery的

 $(".field-group-format-toggler-abstract").click(function(){ $(this).siblings(".field-group-format-wrapper").toggle(); $(this).html( $(this).html() == '+' ? '–' : '+'); });​ 

http://jsfiddle.net/iambriansreed/JLj2X/

尝试使用$(this).parent().find(".field-group-format-wrapper")

 $(".field-group-format-toggler-abstract").click(function() { $(this).parent().find(".field-group-format-wrapper").toggle(); }); 

http://jsfiddle.net/LHguJ/12/

或与siblings

 $(".field-group-format-toggler-abstract").click(function() { $(this).siblings(".field-group-format-wrapper").toggle(); }); 

http://jsfiddle.net/LHguJ/13/