【问题标题】:Why jQuery next can't find the next div?为什么jQuery next 找不到下一个div?
【发布时间】:2013-11-06 14:31:42
【问题描述】:

我想为常见问题创建一个页面并使用 jQuery 来显示每个答案。但它不起作用。
每个问答的格式是这样的:

<div><a href="javascript:void(0)" class="expand">First Question</a></div>
<div class="answer" style="display:none">First Answer</div>  

我使用的jQuery代码是:

$(".expand").click(function(){
    $(this).next('.answer').slideToggle();
});

错了吗?你也可以看到它的jsFiddle

【问题讨论】:

    标签: javascript jquery find element next


    【解决方案1】:

    $(this) 是 a 元素,并且该元素没有兄弟元素。如果你想要 div,请使用 parent:

    $(this).parent().next()
    

    【讨论】:

      【解决方案2】:

      next() 工作的两个元素不在同一级别。

      试试这个:

      $(".expand").click(function(){
          $(this).parent().next('.answer').slideToggle();
      });
      

      这是一个updated fiddle 供您参考

      【讨论】:

      • 如何为此使用选择器 - jsfiddle.net/8HH9L/4 我想在按钮后隐藏表格中的选定行...
      【解决方案3】:

      因为jQuery.next() 抓取兄弟姐妹,所以您尝试获取的 div 是父母的兄弟姐妹,而不是兄弟姐妹。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-11-25
        • 1970-01-01
        • 1970-01-01
        • 2016-02-07
        • 2023-04-07
        • 2011-05-23
        • 1970-01-01
        相关资源
        最近更新 更多