Reputation: 407
<div class='nrOfCopies'>2</div>
<button class='itemRemove'>Remove</button>
$(document).on('click','.itemRemove', function(){
var num = $(this).closest('.nrOfCopies').text();
console.log('number = ' + num);
});
The result from the console.log is "number = " (a empty line) way?
Upvotes: 1
Views: 21
Reputation: 36438
.closest()
finds parent nodes. You want prev()
:
$(document).on('click','.itemRemove', function(){
var num = $(this).prev('.nrOfCopies').text();
console.log('number = ' + num);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class='nrOfCopies'>2</div>
<button class='itemRemove'>Remove</button>
Upvotes: 1
Reputation: 337560
closest()
is used to retreive parent elements, .nrOfCopies
is a sibling so try prev()
:
var num = $(this).prev('.nrOfCopies').text();
Upvotes: 2