我有这个html结构:
library(purrr)
library(tidyverse)
library(jsonlite)
path <- "./your_path"
files <- dir(path, pattern = "*.json")
data <- files %>%
map_df(~fromJSON(file.path(path, .), flatten = TRUE))
我想做的是:每个WRAP都有相同的结构。当用户点击&#34; DIVTWOBUTTON&#34;链接,我想得到位于同一个WRAP div内的输入类。
我必须使用$(this)并且不能使用类名,因为它们是动态的。
有什么想法吗?感谢。
答案 0 :(得分:0)
很简单,使用.closest('.wrap')
然后.find('input')
,假设每个input
内只有一个.wrap
标记。
参见下面的演示
$('.divTwoButton').on('click', function() {
console.log($(this).closest('.wrap').find('input').prop('class'));
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="structure">
<div class="wrap">
<div class="divOne">
<input type="text" class="class01 myClass01" value="">
</div>
<div class="divTwo">
<fieldset>
<legend>Sub-items</legend>
<div>
<div class="divTwoButtons">
<a class="divTwoButton" href="javascipt:void(0);">GET THIS WRAP INPUT CLASSES</a>
</div>
</div>
</fieldset>
</div>
</div>
<!-- end wrap -->
<div class="wrap">
<div class="divTwo as">
<input type="text" class="class02 myClass02" value="">
</div>
<div class="divTwo">
<fieldset>
<legend>Sub-items</legend>
<div>
<div class="divTwoButtons">
<a class="divTwoButton" href="javascipt:void(0);">GET THIS WRAP INPUT CLASSES</a>
</div>
</div>
</fieldset>
</div>
</div>
<!-- end wrap -->
</div>
<!-- end structure -->
&#13;