Пытаюсь понять в чем проблема но уже не могу сам, думал ограничить через .toFixed, но как-то не вышло или я не так его прописал. Есть поле куда вводиться количество, и две кнопки + и -. Впринципе добавляет и отнимает по 0.1 вполне нормально но переодически проскакивает вместо 1.4 например 1.4000000000000001, далее 1.5000000000000002, 1.6000000000000003 и так далее.
Если есть еще ошибки синтаксиса или еще что-то в виде совета на будущее буду рад прочитать.
function validate_pole_product_options (val, product_option_value_id, znak, minimumvalue, maximumvalue) {
val.value = val.value.replace(/[^[+-]?\d+\.?\d*,]/g, '');
if (maximumvalue < 0) maximumvalue = 1000;
input_val = $('.pro_'+product_option_value_id+' .plus-minus');
quantity = parseFloat(input_val.val());
<?php if ($q_zavisimost) { ?>
if(znak=='+' && input_val.val() < maximumvalue) input_val.val(quantity+0.1);
else if(znak=='-' && input_val.val() > minimumvalue) input_val.val(quantity-0.1);
else if(znak=='=' && input_val.val() < maximumvalue && input_val.val() < maximumvalue) input_val.val(input_val.val());
if (quantity < 0 || quantity < minimumvalue) {
input_val.val(minimumvalue);
val.value = minimumvalue;
} else if (quantity > maximumvalue) {
input_val.val(maximumvalue);
val.value = maximumvalue;
}
<?php } else { ?>
if(znak=='+') input_val.val(quantity+0.1);
else if(znak=='-' && input_val.val() > minimumvalue) input_val.val(quantity-0.1);
else if(znak=='=' && input_val.val() > minimumvalue) input_val.val(input_val.val());
if (quantity < 0 || quantity < minimumvalue) {
input_val.val(minimumvalue);
val.value = minimumvalue;
}
<?php } ?>
}
function get_revpopup_cart_pr_option_quantity (product_option_value_id) {
input_val = $('.pro_'+product_option_value_id+' .plus-minus').val();
quantity = parseFloat(input_val);
return quantity;
}
<td class="text-center options_buy_quantity">
<div class="number">
<div class="frame-change-count">
<div class="btn-plus">
<button type="button" onclick="validate_pole_product_options(this,<?php echo $option_value['product_option_value_id']; ?>,'+',<?php echo $minimum; ?>,<?php echo $option_value['quantity']; ?>);">+</button>
</div>
<div class="btn-minus">
<button type="button" onclick="validate_pole_product_options(this,<?php echo $option_value['product_option_value_id']; ?>,'-',<?php echo $minimum; ?>,<?php echo $option_value['quantity']; ?>);">-</button>
/div>
</div>
<input type="text" name="quantity" class="plus-minus" value='<?php echo $minimum; ?>' onchange="validate_pole_product_options(this,<?php echo $option_value['product_option_value_id']; ?>,'=',<?php echo $minimum; ?>,<?php echo $option_value['quantity']; ?>);" onkeyup="validate_pole_product_options(this,<?php echo $option_value['product_option_value_id']; ?>,'=',<?php echo $minimum; ?>,<?php echo $option_value['quantity']; ?>);">
</div>
</td>
Все верно, с помощью toFixed проблема у меня решилась
parseFloat((1.5000000000000002).toFixed(1))
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть php, он при определённых событиях выводит button
Новичок в js: Необходимо использовать переменные storeProducts(массив объектов) и detailProduct(конкретный объект) далее в программе, но они не видны за пределами...