【问题标题】:jQuery select another element with certain class in same parentjQuery在同一个父级中选择另一个具有特定类的元素
【发布时间】:2025-12-12 15:25:06
【问题描述】:

假设我有这个 div

<div id='parent'>
  <button id='button'></button>
  <div id='child'>
     <div id='grandchild' class='lookAtMe'>
          Some JSON text
     </div>
  </div>
</div>

我想为#button 提供一个单击事件,该事件在#lookAtMe div 处返回文本,特定于它共享父/祖父的div(在本例中为#parent div)

我尝试使用:

 $("#button").on("click",function(){
     var ReturnedText = $(this).parent(".lookAtMe").text();
     console.log(RetrunedText);
 });

但控制台日志会重新运行(空字符串)。

我哪里做错了?请帮忙。非常感谢。

【问题讨论】:

  • 该按钮没有类lookAtMe的父级,它有一个id为父级的div作为它的父级。试试 $(this).parent().find('.lookAtMe').text();
  • 你甚至不需要parent...$(this).next().find('.lookAtMe').text()

标签: javascript jquery html jquery-selectors


【解决方案1】:

因为那个班级没有父母。你需要find()

其实你需要写

 var ReturnedText = $(this).parent().find(".lookAtMe").text();

 $("#button").on("click",function(){
     var ReturnedText = $(this).parent().find(".lookAtMe").text();
     console.log(ReturnedText);
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='parent'>
  <button id='button'></button>
  <div id='child'>
     <div id='grandchild' class='lookAtMe'>
          Some JSON text
     </div>
  </div>
</div>

【讨论】:

  • 啊,是的,我明白了,好像我没有理解。我使用 parent() 参数来选择父母的孩子的东西,所以它实际上用来指定我们需要选择的父母。我现在明白了。谢谢你。我试过代码,效果很好。
最近更新 更多