jQuery切换问题

jQuery切换问题,jquery,toggle,Jquery,Toggle,我对jQuery切换有一个问题-您可以在这里看到这个问题: 如您所见,出现在黄色框中的每个项目也会出现在黑色框中。当您单击黑框中的“主要项目”时,黄色框中的相应项目将被切换 我遇到的问题是,当单击其中一个子项时,它不仅会切换自身,还会切换其父项。我只需要它自己切换。(例如,如果您单击黑框中的“子项a”,它应该只在黄色框中切换“子项a”,但此时它同时切换“子项a”和父项“主项”) 我对jQuery相当陌生,所以我确信这是一个愚蠢的错误。 我怎样才能解决这个问题 (注意:该代码设计用于内容管理系统,

我对jQuery切换有一个问题-您可以在这里看到这个问题:

如您所见,出现在黄色框中的每个项目也会出现在黑色框中。当您单击黑框中的“主要项目”时,黄色框中的相应项目将被切换

我遇到的问题是,当单击其中一个子项时,它不仅会切换自身,还会切换其父项。我只需要它自己切换。(例如,如果您单击黑框中的“子项a”,它应该只在黄色框中切换“子项a”,但此时它同时切换“子项a”和父项“主项”)

我对jQuery相当陌生,所以我确信这是一个愚蠢的错误。 我怎样才能解决这个问题


(注意:该代码设计用于内容管理系统,因此可以动态添加/删除新的地图图层(类别),并在菜单中显示带有切换的相应项目。这就是为什么正如一些人所指出的,它有点“意大利面”)

谢谢


Zach

每个子项都是主项的子元素。因此,当您单击子项时,您也在单击主项-这就是为什么它也会切换

要防止出现这种情况,您必须呼叫:

e.stopPropagation();
在传递到jQuery的click事件上,单击处理程序


你可以考虑修改你所吃的意大利面代码。当我看着它时,我的大脑爆炸了

DNR中提到的-stopPropagation()在这里处理嵌套列表时是必需的


单击其中一个子项时,例如黑框中的“子项a”,它应仅切换黄色框中相应的“子项a”。此时,如果您单击“Sub Item a”,它将切换“Sub Item a”和上面的“Main Item”。当您说“it should toggle”时,您的意思是它应该在黄色框中显示该项目吗?该代码旨在与内容管理系统配合使用,以便创建新的地图图层(类别)可以动态添加/删除,并在菜单中显示带有切换的相应项。这就是为什么它有点“意大利面条”。