正如您在下面的代码中看到的那样,价格属性price="20.77"
中的小数点后面有一些值。 jquery功能完美运行,但它不会带来分钱。我不知道为什么,我无法在其他任何地方找到解决方案。
非常感谢所有帮助,谢谢。
jQuery(document).ready(function(){
jQuery(".cart66-select").change(function(){
var price = parseInt(jQuery(this).find(':selected').attr('price')).toFixed(2);
jQuery("#price").html(price);
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<select class="cart66-select">
<option value="1" price="10.99">Coral</option>
<option value="2" price="20.77">Passion Fruit (+5.00)</option>
</select>
<strong class="cart66-price-value">$<span id="price">24.22</span></strong>
&#13;
答案 0 :(得分:4)
您需要改为使用parseFloat()
。
jQuery(document).ready(function(){
jQuery(".cart66-select").change(function(){
var price = parseFloat(jQuery(this).find(':selected').attr('price')).toFixed(2);
jQuery("#price").html(price);
});
});