我有这个价格较低的div和另一个价格较高的div(打折)
<span class="ty-price" id="line_discounted_price_28797">
<bdi><span class="ty-price-num">£</span><span id="sec_discounted_price_28797" class="ty-price-num">0.99</span></bdi></span>
因此,当折扣div获得高于div的价格时,它应该需要隐藏
<div class="ut-qty-discount">
<div class="ut-qty-discount-price"><bdi>£<span>1.79</span></bdi></div>
</div>
如果#1价格值小于#2,那么我需要隐藏#2
使用parseFloat()
对字符使用数学运算。
要获得第一个数字,请使用^=
上的id
(starts-with)选择器。下面的意思是找到ID以...开头的元素 - 并获取该元素内的文本:
let prx = $('[id^=sec_discounted_price]').text();
对于第二个数字,您需要通过类找到第一个跨度,然后遍历到第二个跨度:
let dsc = $('.ut-qty-discount-price>bdi>span').text();
这是工作演示:
$('button').click(function(){
let prx = $('[id^=sec_discounted_price]').text();
let dsc = $('.ut-qty-discount-price>bdi>span').text();
if (parseFloat(prx) < parseFloat(dsc) ){
$('.ut-qty-discount-price').hide();
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<span class="ty-price" id="line_discounted_price_28797">
<bdi><span class="ty-price-num">£</span><span id="sec_discounted_price_28797" class="ty-price-num">0.99</span></bdi></span>
<div class="ut-qty-discount">
<div class="ut-qty-discount-price"><bdi>£<span>1.79</span></bdi></div>
</div>
<button>Calculate</button>