单击.aspx页面中的h4时隐藏/显示列表项

时间:2015-11-30 15:43:24

标签: javascript jquery asp.net

我正在建立一个按不同类别分类的简报档案。标记看起来像这样:

<h4>Category 1</h4>
                <ul>
                   <li><a href="../Newsletter1" target="_blank" class="button_sharp left">Newsletter 1</a></li>
                   <li><a href="../Newsletter2" target="_blank" class="button_sharp left">Newsletter 2</a></li>
                   <li><a href="../Newsletter3" target="_blank" class="button_sharp left">Newsletter 3</a></li>

                </ul>

 <h4>Category 2</h4>
                <ul>
                   <li><a href="../Newsletter1" target="_blank" class="button_sharp left">Newsletter 1</a></li>
                   <li><a href="../Newsletter2" target="_blank" class="button_sharp left">Newsletter 2</a></li>
                  <li><a href="../Newsletter3" target="_blank" class="button_sharp left">Newsletter 3</a></li>

                </ul>

现在会有很多类别和简报,所以我希望在用户点击类别h4之前隐藏新闻简报。并在再次点击时再次隐藏。 我试过这个功能:

<script type="text/javascript">
   $('h4').click(function() {
   $(this).find('ul').toggle();
 });
</script>

我想这不起作用,因为我必须将h4包裹在ul中,但这会导致错误。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

你需要使用jQuery .next函数,所以它会在每个h4标签之后寻找下一个<ul>类,这里是一个快速演示演示:

(function( $ ) { 
$('h4').click(function() {
   $(this).next('ul').toggle();
 });
}).apply( this, [ jQuery ]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<h4>Category 1</h4>
<ul>
  <li><a href="../Newsletter1" target="_blank" class="button_sharp left">Newsletter 1</a></li>
  <li><a href="../Newsletter2" target="_blank" class="button_sharp left">Newsletter 2</a></li>
  <li><a href="../Newsletter3" target="_blank" class="button_sharp left">Newsletter 3</a></li>

</ul>

<h4>Category 2</h4>
<ul>
  <li><a href="../Newsletter1" target="_blank" class="button_sharp left">Newsletter 1</a></li>
  <li><a href="../Newsletter2" target="_blank" class="button_sharp left">Newsletter 2</a></li>
  <li><a href="../Newsletter3" target="_blank" class="button_sharp left">Newsletter 3</a></li>

</ul>

并且a Jsfiddle demo