Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery在for循环中单击函数仅在最后一个循环中工作_Javascript_Jquery_For Loop_Click - Fatal编程技术网

Javascript jquery在for循环中单击函数仅在最后一个循环中工作

Javascript jquery在for循环中单击函数仅在最后一个循环中工作,javascript,jquery,for-loop,click,Javascript,Jquery,For Loop,Click,我可能做错了什么,但我就是看不出来。我试图使用for循环来定义多个单击事件,但遇到了意外结果。这其中有些是可行的(函数开始时的隐藏和显示,但这两个部分最终都针对循环中的第二项。有人能看看这一点并告诉我我做错了什么吗?非常感谢您的帮助 以下是链接: 您正在为每个id的所有摘要分配相同的事件。这是错误的 首先…要隐藏所有细节并显示所有细节,只需使用: $('.details').hide(); $('.toggler').show(); 然后为所有sumaries定义click函数: $('.su

我可能做错了什么,但我就是看不出来。我试图使用for循环来定义多个单击事件,但遇到了意外结果。这其中有些是可行的(函数开始时的隐藏和显示,但这两个部分最终都针对循环中的第二项。有人能看看这一点并告诉我我做错了什么吗?非常感谢您的帮助

以下是链接:

您正在为每个id的所有摘要分配相同的事件。这是错误的

首先…要隐藏所有细节并显示所有细节,只需使用:

$('.details').hide();
$('.toggler').show();
然后为所有sumaries定义click函数:

$('.summary').click(function(){
   if($('.toggler',this).html() == ' -'){
      $('.toggler',this).html(' +');
      $('.details',$(this).parent()).hide();
   }else{
      $('.toggler',this).html(' -');
      $('.details',$(this).parent()).show();
   }
});
把一切都放在

$(function(){
   ...
});

应该没问题。

发布一些代码,这样我们就可以帮助你。关于你编写的代码问题的问题必须在问题本身中描述具体问题,并包含有效的代码来重现问题。@MikeW在这种情况下问题很明显…@FlashThunder这不是重点。如果OP删除了链接处的页面,则stion和答案变得毫无意义。旨在成为未来可用的有用问题和答案的档案。