Jquery在表之后切换的次数过多
嗨,我不是最好的Jquery玩伴,今天我想做一个简单的切换练习。要使用范围中的触发器切换表的某个部分 我有一个表,我想在“td”中使用一个span来触发切换。我希望jquery切换当前行下的所有行,直到找到另一个具有类标题的行 Jquery代码: $('.meer').click(function(){ $(this).parent().find('span.meer').text(function(_, value){return value=='-'?'+':'-'}); $(this).parents().nextUntil('tr.header').toggle(100, function(){ }); }); 问题是,在切换后,表中的所有内容都显示为无。。。 请检查一下小提琴Jquery在表之后切换的次数过多,jquery,css,Jquery,Css,嗨,我不是最好的Jquery玩伴,今天我想做一个简单的切换练习。要使用范围中的触发器切换表的某个部分 我有一个表,我想在“td”中使用一个span来触发切换。我希望jquery切换当前行下的所有行,直到找到另一个具有类标题的行 Jquery代码: $('.meer').click(function(){ $(this).parent().find('span.meer').text(function(_, value){return value=='-'?'+':'-'}); $
有人能帮我吗?问题是
。在离开table元素后,nextUntil
继续运行。解决方案正在更改$(this).parents().nextUntil('tr.header').slideToggle(100,函数(){})
到$(this).parents().nextUntil('tr.header,div').slideToggle(100,function(){})代码>
编辑:链接错误您正在调用的$(this).parents()
,没有参数。.parents()
函数用于接收选择器作为参数。
您要做的是找到span的直接tr
祖先。有.closest()
用于此。
因此,您必须替换此:
$(this).parents().nextUntil('tr.header').toggle(100, function(){
});
为此:
$(this).closest("tr").nextUntil('tr.header').slideToggle(100, function(){
});
小提琴:
$(this).closest("tr").nextUntil('tr.header').slideToggle(100, function(){
});