无法抓取上面div中的文字

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (63)

在下面的代码段中,我想Text to grabEdit点击按钮时获取:

<div class="row">
    <div class="col-xs-12">
      <div class="pbody">
        <p>Text to grab</p>
      </div>
    </div>
  </div>
  <br>
  <div class="row treply">
    <div class="col-xs-1">
      <p>Hi there</p>
    </div>
    <div class="col-xs-1">
      <a class="quote btn" href="#">reply</a>
    </div>

    <div class="col-xs-1">
      <a class="edit btn" href="#">Edit</a>
    </div>
  </div>

有几个div与pbody类,但我想在点击Edit按钮上方立即获得。

我尝试了很多jQuery技巧,如:

$(document).ready(function () {
  $(".edit").click(function () {
    let postText = $(this).closest(".pbody").children("p").text();
     console.log("postText is:", postText);
  });
});

但没有工作。非常感谢你的帮助。

提问于
用户回答回答于

您没有根据HTML遍历DOM。试试这个:

$(document).ready(function() {
  $(".edit").click(function() {
    let postText = $(this).closest(".row.treply").prev('br').prev('.row').find('div.pbody > p').text();
    console.log("postText is:", postText);
  });
});

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row">
  <div class="col-xs-12">
    <div class="pbody">
      <p>Text to grab</p>
    </div>
  </div>
</div>
<br>
<div class="row treply">
  <div class="col-xs-1">
    <p>Hi there</p>
  </div>
  <div class="col-xs-1">
    <a class="quote btn" href="#">reply</a>
  </div>

  <div class="col-xs-1">
    <a class="edit btn" href="#">Edit</a>
  </div>
</div>

参考文献:

扫码关注云+社区

领取腾讯云代金券