であれば、これは壊れます。また、私はjQuery
さん.on
クリックイベントを使用するためにあなたを示唆しているであろうあなたはそれがおよそjQuery
だと述べているので、だから私はあなたのコードビットを変更し、クリックイベントに追加され、このボタンをクリックした取得する$(this)
で$('#SomeButton')
を置き換え:。
$('.SomeButtonClass').on('click', function(){
var lastObj = $(this);
var parent = lastObj.parent();
var previousObject = parent.closest(":has(h4)").find('h4');
console.log(previousObject.text());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="top">
<div class="header">
<h4 class="title">Title 1</h4>
</div>
<div class="body">
<div id="someDiv">
<div class="someOtherDiv">
<div class="OneMoreDiv">
<button id="SomeButton" class="SomeButtonClass">button</button>
</div>
</div>
</div>
</div>
</div>
<div class="top">
<div class="header">
<h4 class="title">Title 2</h4>
</div>
<div class="body">
<div id="someDiv">
<div class="someOtherDiv">
<div class="OneMoreDiv">
</div>
</div>
</div>
</div>
</div>
前の要素は何ですか?ボタン?マークアップはコード例とは異なるので、明らかに動作しません。 – Ionut
@Ionut、まさに、ボタンに最も近いものが必要です。私のコードの問題は何ですか?私はjQueryを初めて使っています。助けてもらえますか? – xameeramir
学生、私の答えを参照してください。それがあなたを助けることを願っています – Ionut