0

html:

<div class="ancestor">
  <div class="sibling"><input class="findMe" /></div>
  <button>find findMe</button>
</div>

或(输入是直接兄弟)

<input class="findMe" />
<button>find findMe</button>

如果单击按钮,有没有办法找到 .findMe?基本上,将检查祖先、以前的兄弟姐妹(第二个片段)和兄弟姐妹中的孩子(第一个片段)。

JS:

$("button").click(function(){
  var btn = $(this);
  // what I'm after...
  var input = btn.findSomethingThatExistsAnywhereAboveMe(".findMe") 
});
4

1 回答 1

0

不是您提供的代码。

脚本应该如何知道您的意思是特定.findMe元素,您可以在同一个文档中包含任意数量的这些元素。

但是,如果您在此标记周围有一个父元素,那么您可以找到特定.findMe的 .

<div class="parentElement">
  <div class="ancestor">
    <input class="findMe" />
  </div>
  <button>find findMe</button>
</div>

或者

<div class="parentElement">
  <input class="findMe" />
  <button>find findMe</button>
</div>

然后你可以这样做:

$("button").click(function(){
  var btn = $(this);
  var input = btn.parents(".parentElement").find(".findMe");
});
于 2012-05-01T13:28:58.033 回答