Есть рабочий скрипт (ниже).
На данный момент калькулятор каждый из параметров длины, ширины и высоты (x, y, z) увеличивает на 20%. Но требуется увеличить эти параметры не на процент, а на целое число, т.е к каждой величине добавлять по 20 мм. Просто запись выражения (x+20)*(y+20)*(z+20) не помогает в решении проблемы, так как результат возрастает в сотни раз (как я понимаю каждая величина возрастает на 2000% ?).
Помогите, пожалуйста, советом, где и что можно/нужно исправить, чтобы подсчет велся корректно?
<div class="clac_form">
Длина(ММ) <input type="text" value="0" size="5" onkeydown="keyDownNumber(event);" onkeyup="setX(this.value);"/> Ширина(ММ) <input type="text" value="0" size="5" onkeydown="keyDownNumber(event);" onkeyup="setY(this.value);"/> Высота (ММ) <input type="text" value="0" size="5" onkeydown="keyDownNumber(event);" onkeyup="setZ(this.value);"/> <br>Вес (гр.)<input type="text" value="0" size="5" onkeydown="keyDownNumber(event);" onkeyup="setW(this.value);"/> Количество (шт.)<input type="text" value="0" size="5" onkeydown="keyDownNumber(event);" onkeyup="setN(this.value);"/> <select onclick="setM(this.value)">
<option value="0">Выберите материал</option>
<option value="0.357">Материал 1</option>
<option value="0.856">Материал 2</option>
<option value="0.202">Материал 3</option>
<option value="0.202">Материал 4</option>
<option value="0.43">Материал 5</option> </select>
<br>
<input type="checkbox" id="a" onclick="reSum()" />Усложнение 1<br />
<input type="checkbox" id="b" onclick="reSum()" />Усложнение 2<br />
<input type="checkbox" id="c" onclick="reSum()" />Усложнение 3<br />
<input type="checkbox" id="d" onclick="reSum()" />Усложнение 4<br />
<input type="checkbox" id="e" onclick="reSum()" />Усложнение 5<br />
<div class="summ">Орентировочная стоимость 1 детали: <span id="summ">0</span> грн.</div>
</div>
<script type="text/javascript">
var x = 0;
var y = 0;
var z = 0;
var w = 0;
var n = 0;
var f = 0;
var material = 0;
var summtemp = 1;
function keyDownNumber(e)
{
var key = (typeof e.charCode == 'undefined' ? e.keyCode : e.charCode);
if (key < 58 && key > 47){
return true;
} else {
return false;
}
}
function reSum(){
summtemp = 1;
if (document.getElementById('a').checked==true) {
summtemp += 0.4;
} else {
summtemp += 0;
}
if (document.getElementById('b').checked==true) {
summtemp += 0.3;
} else {
summtemp += 0;
}
if (document.getElementById('c').checked==true) {
summtemp += 0.6;
} else {
summtemp += 0;
}
if (document.getElementById('d').checked==true) {
summtemp += 0.9;
} else {
summtemp += 0;
}
if (document.getElementById('e').checked==true) {
summtemp += 0.3;
} else {
summtemp += 0;
}
var f = Math.ceil(n/20);
var summ = ((x*1.2)*(y*1.2)*(z*1.2)*0.000406+200)*f/n*summtemp+w*material*summtemp;
document.getElementById('summ').innerHTML = Math.ceil (summ);
}
function setX(Size){
x = Size;
reSum()
}
function setY(Size){
y = Size;
reSum()
}
function setZ(Size){
z = Size;
reSum()
}
function setM(price){
material = price;
reSum()
}
function setW(weight){
w = weight;
reSum()
}
function setN(quantity){
n = quantity;
reSum()
}
</script>