javascript - jQuery - 在父 div 的朋友 div 中获取元素
问题描述
HTML
<div class="container-fluid">
<div class="input-page">...</div>
<!-- field 1 -->
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<!-- field 2 -->
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<!-- field 3 -->
<div class="col-md-12 col-sm-12 col-xs-12 no-padding"> <!-- I want to grab this block -->
<div class="x_panel">
<div class="x_content">
<form class="data-table">
<div class="row">...</div>
<div class="row">...</div>
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">
<div class="btn-group">
<button>Add</button> <!-- when I click this button -->
<button>Other</button>
</div>
</div>
</div>
每个“ field
”都是内容div
和按钮的组合div
。当我按下那个添加按钮时,我想抓住它正上方的内容 div。
我正在考虑首先尝试$(this).closest('.container-fluid')
,然后导航到具有我单击的按钮的 div 正上方的 div。但我不知道怎么做。有任何想法吗?
解决方案
一种粗略的方法是让父母/父母最接近的兄弟姐妹prev
$("#AddButton").click(function() {
var blockToGrab = $(this).parent().parent().prev();
// do stuff with block
console.log("I found: " + blockToGrab.html());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container-fluid">
<div class="input-page">...</div>
<!-- field 1 -->
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<!-- field 2 -->
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">...</div>
<!-- field 3 -->
<div class="col-md-12 col-sm-12 col-xs-12 no-padding"> <!-- I want to grab this block -->
<div class="x_panel">
<div class="x_content">
<form class="data-table">
<div class="row">...</div>
<div class="row">...</div>
</form>
</div>
</div>
</div>
<div class="col-md-12 col-sm-12 col-xs-12 no-padding">
<div class="btn-group">
<button id="AddButton">Add</button> <!-- when I click this button -->
<button>Other</button>
</div>
</div>
</div>
推荐阅读
- html - 无法将“java.lang.String”类型的值转换为所需的“long”类型;
- python - logrotate 在旋转 python 日志文件后在日志文件上创建空字节
- html - 在 SVG 背景中放置一个导航栏
- ruby-on-rails - rails中的字符串拆分('')问题
- javascript - JS 异步编程中如何处理对象?删除功能的影响
- python - 无法在 tkinter 中将滚动条添加到文本小部件(包含多个框架)
- mongodb - 如何在 spring-data-mongodb 中检索文档时省略字段?
- teiid - 当我尝试在域模式下安装 teiid 时,没有打开 teiid-jdbc socket-binging portall 31000
- facebook - 手机号是唯一的,而 Facebook 登录却报错
- python - 如何删除仅包含某些值的行?