在jquery中使用contains动态显示嵌套列表项

在jquery中使用contains动态显示嵌套列表项,jquery,Jquery,我有一个ul列表,其中包含嵌套的ul项目。根据用户所在的页面,我希望显示该特定页面的嵌套列表。我有一些以前在其他网站上使用过的代码,但我不太明白为什么它在这里不起作用。下面是我正在使用的jquery: var pName = 'In The News'; $('#subNav ul ul').hide(); $("#subNav li:contains('"+pName.replace('&','&')+"')").parents('ul').show(); $("

我有一个ul列表,其中包含嵌套的ul项目。根据用户所在的页面,我希望显示该特定页面的嵌套列表。我有一些以前在其他网站上使用过的代码,但我不太明白为什么它在这里不起作用。下面是我正在使用的jquery:

var pName = 'In The News';

$('#subNav ul ul').hide();

$("#subNav li:contains('"+pName.replace('&','&')+"')").parents('ul').show();

$("#subNav li:contains('"+pName.replace('&','&')+"')").children('ul').show();
不知道为什么它不起作用。再配一双眼睛就太棒了。谢谢大家。。。这是我的JSFIDLE链接:

children()
仅适用于直系后代。在这里使用
find()
,因为您的结构实际上是li>div>ul

此外,我会将代码更改为运行该选择器一次,并将结果保存到一个变量中,因为它看起来很昂贵。

children()
仅适用于直接后代。在这里使用
find()
,因为您的结构实际上是li>div>ul


此外,我会更改代码,以运行该选择器一次,并将结果保存到一个变量中,因为它看起来很昂贵。

sweet。。。这就解决了问题。谢谢还有,我该如何将所选的变量放入变量中并更改代码。。。这就解决了问题。谢谢另外,我如何将所选代码放入变量并更改代码?