Помогите доделать калькулятор?

HR
На сайте с 22.08.2010
Offline
94
366

Здравствуйте! Помогите доделать калькулятор кто разбирается, я чайник в скриптах, пхп знаю более или менее.

Вроде все нормально, но не пойму что добавить сюда <td>Расчетная стоимость натяжного потолка:</td> <td><b><p id="result2">??? руб.</p></b></td> чтобы выводилась сумма.

<script type="text/javascript">
function clearSumm() {
window.document.calc.result.value = "";
}
function count(){
/*------------Расценки на дополнительную атрибутику-------------*/
/*Стоимость дополнительных углов выкройки более 4 углов*/
UgolCost = 100*window.document.calc.ugol.value;
/*Устройство конструкции под типовой встроенный светильник R-65*/
Svet = 250*window.document.calc.svet.value;
/*Устройство конструкции под потолочную люстру*/
Lustr = 300*window.document.calc.lustr.value;
/*Обход трубы, уходящей в потолок*/
Trub = 200*window.document.calc.trub.value;
/*Установка балок для монтажа профиля*/
Anov = 300*window.document.calc.anov.value;
/*Установка потолочного карниза*/
Sten = 350*window.document.calc.sten.value;
/*Декоративная накладка белая*/
Lightdecor = 40*window.document.calc.lightdecor.value;
/*Выезд на монтаж за пределы города 10р/км*/
City = 20*window.document.calc.city.value;
/*-------Процентная ставка начисляется в цикле умножением на 0.1, тут задаётся только переменная*/
/*Центровка, либо заданное расположение швов 10%*/
//Centre = window.document.calc.centre.value;
/*Установка потолка на высоте, более 4 м 10%*/
//Highceiling = window.document.calc.highceiling.value;
/*Комбинация цветов 10%*/
//Colorcombination = window.document.calc.colorcombination.value;
/*Выезд дежурной бригады 1500*/
//Duty = window.document.calc.duty.value;
/*Выезд на монтаж потолка площадью, менее 10 м? 750*/
//Departure = window.document.calc.departure.value;
/*Выезд на монтаж потолка площадью, менее 5 м? 1250*/
//Departuremax = window.document.calc.departuremax.value;
summ = 0;
S = window.document.calc.area.value;
Type = window.document.calc.type.value;
S = S.replace(/,/g, ".");

/*----Каждое число соответствует цене потолка по порядковому номеру----*/
/*Отсчёт с 0, первый потолок в списке, второй элемент в массиве.*/

/*Размер от 6 до 10 м2*/
var Razm_6 = new Array(0,320,320);

/*Размер от 10 до 20 м2*/
var Razm_10 = new Array(0,280,320);

/*Размер от 20 до 30 м2*/
var Razm_20 = new Array(0,260,300);

/*Размер свыше 30 м2*/
var Razm_30 = new Array(0,240,280);

/*Размер свыше 50 м2*/
var Razm_50 = new Array(0,220,260);

/*----Проверяет длинну и подставляет нужный ценник----*/
if (S>=50)
{SS = S*Razm_50[Type];}

else if(30<=S && S<50)
{SS = S*Razm_30[Type];}

else if(20<=S && S<30)
{SS= S*Razm_20[Type];}

else if (10<=S && S<20)
{SS = S*Razm_10[Type];}

else if (6<=S && S<10)
{SS = S*Razm_6[Type];}

else if (1<=S && S<6)
{SS = SS = 2000;}

else{SS = 0;};

/*----Процентная ставка----*/
//if (Centre == 1){CentrePrice = SS*0.1;} else {CentrePrice = 0;};
//if (Highceiling == 1){Highceiling = SS*0.1;} else {Highceiling = 0;};
//if (Colorcombination == 1){Colorcombination = SS*0.1;} else {Colorcombination = 0;}

/*----Доп услуги----*/
//if (Duty == 1){Duty = 1500;} else {Duty = 0;}
//if (Departure == 1){Departure = 750;} else {Departure = 0;}
//if (Departuremax == 1){Departuremax = 1250;} else {Departuremax = 0;}

/*---Суммируем все что посчитали---*/
if(S!=""){summ = SS + UgolCost + Svet + Lustr + Trub + Anov + Sten + Lightdecor + City /* + CentrePrice + Highceiling + Colorcombination + Duty + Departure + Departuremax*/;}
else {summ = 0}
/*---Вывод суммы в нормальном виде (10000 преобразует в 10 000)---*/
summ = Math.round(summ);
summf = summ.toString();
summf = summf.substr(0,summf.length-3)+" "+summf.substr(summf.length-3,3);
//window.document.calc.result2.value = summf;
document.getElementById('result2').innerHTML = summf+' руб.';
return true;
}

/*Сброс всех значений*/
function resetall()
{
window.document.calc.reset();
document.getElementById('result2').innerHTML = '0 руб.';
document.getElementById("rass").className = "hidelist";
}
</script>


<form name="calc">
<table align="left" width="550" border="0" cellpadding="1" cellspacing="2">
<tbody>
<tr>
<td width="350">Общая площадь:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="area">&nbsp;(м²)</td>
</tr>
<tr>
<td width="250">Выберите потолок:</td><td><select id="potolok" class="inputbox" onchange="clearSumm()" name="type">
<option value="1">Потолок (бесшовный) ширина пленки до 380 см</option>
<option value="2">Потолок (бесшовный: белый сатин, мат, глянец) ширина пленки до 500 см</option>

</select></td>
</tr>
<tr>
<td width="350">Установка вставки (плинтус ПВХ):</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="lightdecor"> &nbsp;(40р/м.п.)</td>
</tr>
<tr>
<td width="350">Стоимость дополнительных углов выкройки более 4 углов:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="ugol"> &nbsp;(100р/шт за каждый последующий)</td>
</tr>
<tr>
<td width="350">Установка закладной детали под люстру:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="lustr"> &nbsp;(300р/шт)</td>
</tr>
<tr>
<td width="350">Устройство конструкции под встроенный светильник :</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="svet"> &nbsp;(250р/шт)</td>
</tr>
<tr>
<td width="350">Обход трубы, уходящей в потолок:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="trub"> &nbsp;(200р/шт)</td>
</tr>
<tr>
<td width="350">Установка балок для монтажа профиля:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="anov"> &nbsp;(300р/м.п.)</td>
</tr>
<tr>
<td width="350">Установка потолочного карниза:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="sten"> &nbsp;(350р/м.п.)</td>
</tr>
<tr>
<td width="350">Выезд на монтаж за пределы города:</td>
<td><input class="inputbox" onchange="clearSumm()" size="4" name="city"> &nbsp;Расчет стоимости в обе дороги (замер+монтаж)</td>
</tr>

<!--
<tr>
<td width="350">Центровка, либо заданное расположение швов:</td>
<td ><select class="inputbox" onchange=clearSumm() name="centre"> <option value=0 selected>Нет</option> <option value=1>Центровать</option></select></td>
</tr>
<tr>
<td width="350">Установка потолка на высоте, более 4 м:</td>
<td ><select class="inputbox" onchange=clearSumm() name="highceiling"> <option value=0 selected>Нет</option> <option value=1>Да</option></select></td>
</tr>
<tr>
<td width="350">Выезд дежурной бригады:</td>
<td ><select class="inputbox" onchange=clearSumm() name="duty"> <option value=0 selected>Нет</option> <option value=1>Да</option></select></td>
</tr>
<tr>
<td width="350">Выезд на монтаж потолка площадью, менее 10 м?:</td>
<td ><select class="inputbox" onchange=clearSumm() name="departure"> <option value=0 selected>Нет</option> <option value=1>Да</option></select></td>
</tr>
<tr>
<td width="350">Выезд на монтаж потолка площадью, менее 5 м?:</td>
<td ><select class="inputbox" onchange=clearSumm() name="departuremax"> <option value=0 selected>Нет</option> <option value=1>Да</option></select></td>
</tr>
<tr>
<td width="350">Комбнация цветов:</td>
<td ><select class="inputbox" onchange=clearSumm() name="colorcombination"> <option value=0 selected>Нет</option> <option value=1>Да</option></select></td>
</tr>
-->

<tr>
<td width="350">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td align="right" width="350"><input id="rass" class="button" onclick="count()" value="Рассчитать стоимость" type="button"></td>
</tr>
<tr>
<td width="350">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Расчетная стоимость натяжного потолка:</td> <td><b><p id="result2">??? руб.</p></b></td>
</tr>
</tbody>
</table></form>
VertuOzz
На сайте с 20.07.2010
Offline
123
#1

А что, не выводится?

дани мапов
На сайте с 06.09.2012
Offline
204
#2

Работает калькулятор, сумма выводится.

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
VertuOzz
На сайте с 20.07.2010
Offline
123
#3

только при изменении значений в полях сумма не обнуляется.

Вот так работает

function clearSumm() {

document.getElementById('result2').innerHTML = "0 руб.";
}
DD
На сайте с 19.01.2015
Offline
7
#4

HEMASTER, можно твой скрипт использовать?

---------- Добавлено 22.01.2015 в 13:48 ----------

Для интереса добавил скрипт на wp

У меня не работает, в чем может быть причина?

Мне для ознакомительных целей ))

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий