i have the following structure
Code
<a href="blah.html" class="re-direct">
<div class="1div"></div>
<div class="2div">
<div class="click" data-id="text">click</div>
</div>
</a>
<script>
$(document).on('click',".click",function(){ alert($(this).data('id')) })
</script>
the above code works fine but it redirects to the page blah.html how do i stop it from redirecting ?
You need to stop the propagation of the click event up the DOM to the a
element, and also prevent the default behaviour of the link:
$(document).on('click', ".click", function(e) {
e.stopPropagation();
e.preventDefault();
console.log($(this).data('id'))
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<a href="blah.html" class="re-direct">
<div class="1div"></div>
<div class="2div">
<div class="click" data-id="text">click</div>
</div>
</a>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With