0

我不确定如何选择我的 div class="Repors_comments_form"。这里看起来如何

<div>
  <span onclick ="$('.Reports_comments_form').toggle();"  style="cursor:pointer">Report</span>
</div>
<div class="Reports_comments_form">
</div><!-- End of div Reports_form -->

重要的是要注意这是一个循环,可能有很多评论,并且只想要下一个。我尝试了很多方法,但我能做的就是抓住所有类元素。

我试过

<span onclick ="$('.Reports_comments_form').toggle();"
<span onclick ="$('.Reports_comments_form').toggle().next();"
<span onclick ="$('.Reports_comments_form').next().toggle();"
<span onclick ="$('.Reports_comments_form').closest('div').next().toggle();"
4

4 回答 4

2

为了保持行为一致而不弄乱parent()链:

标记:

<div>
    <a href="#" data-target="someId" class="reportButton">Report</a>
</div>
<div id="someId" class="report">

      // you'll be generating the id in the loop, e.g. 'report-12', 'report-13' and so on

</div>

JS:

$('.reportButton').click(function(e){

    e.preventDefault()

    $('#' + $(this).data('target') ).toggle()

})
于 2013-01-01T15:56:37.090 回答
1
<div>
  <span onclick ="$(this).parent().next().toggle();"  style="cursor:pointer">Report</span>
</div>
<div class="Reports_comments_form">
    adadadads
</div>​
于 2013-01-01T15:55:10.857 回答
1

如果您向跨度添加一个类,您可以完全删除您的内联脚本并使用不显眼的 jQuery clcik 处理程序:

HTML

<div>
  <span class="reportButton" style="cursor:pointer">Report</span>
</div>
<div class="Reports_comments_form">

JS

 /* uses next() assuming you may have this button and report sequence in page multiple times*/
$(function(){
    $('.reportButton').click(function(){
              $(this).parent().next().toggle();
    })
})

如果在页面加载后动态添加按钮可以委托 clcik 处理程序使用on()

于 2013-01-01T16:01:18.143 回答
0
<span onclick ="$(this).parent().next('.Reports_comments_form').toggle();"
于 2013-01-01T15:59:44.657 回答