Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Web-дизайн и web-программирование: статьи, скрипты



» Статья: Калькулятор для заказчика
Автор: Голубев Алексей
Представьте такую ситуацию: Вы предлагаете определенные услуги, цены на которые зависят от определенных параметров. Для удобства заказчика Вы можете предложить ему мгновенно рассичать стоимость услуг. Рассмотрим пример с http://www.shelkopryadov.spb.ru/.
1. Создание формы
Для того, чтобы создать форму необходимо для начала определиться, какие параметры будут влиять на результат вычисления. В нашем случаем это: количество стежков, количество цветов в вышивке и тераж.
Далее нам нужно одно поле для вывода цены одной вышивке и поле для вывода стоимости всего теража. Наконец, две кнопки, по щелчку на первой – производится расчет, по щелчку на второй – очистка формы.
Для нормального вывода формы на экран будем использовать таблицу. В итоге получаем следующий код для формы:

<form id="form1">
<table>
<tr><td>Количество стежков:</td>
<td><input type="text" id="ns" maxlength="10" size="10"></td>
</tr>
<tr><td>Тираж:</td>
<td> <input type="text" id="hm" maxlength="5" size="5"></td>
</tr>
<tr><td>Количество цветов:</td>
<td> <input type="text" id="nc" maxlength="2" size="2"></td>
</tr>
<tr><td></td> <td> <input type="button" onClick="raschet()" value="Расчитать"></td></tr>
<tr><td>Цена:</td> <td> <input type="text" id="res1" maxlength="5" size="5"></td></tr>
<tr><td>Стоимость:</td>
<td> <input type="text" id="res2" size="10" maxlength="10"></td>
</tr>
<tr><td></td> <td> <input type="reset" value="Очистить"></td></tr>
</table>
</form>

2. Расчет
Теперь перейдем к расчету цены и стоимоти. На главной странице сайта (см. выше) имеется таблица, отображающая зависимоть, стоимости 1000 стежков от тиража. Цена одного экземпляра вышивки увеличивается на 10% с увеличением количества цветов на 1. Создадим скрипт, который будет обрабатывать введенную пользователем информацию:

<script>
function raschet() {
|// ставим соответствие между стоимость 1000 стяжков и теражом
if ((form1.hm.value<=10)||(form1.hm.value>100)) st=8.5;
if (((form1.hm.value<=20)&&(form1.hm.value>10))||((form1.hm.value>=50)&&(form1.hm.value<=100))) st=8;
if ((form1.hm.value>20)&&(form1.hm.value<50)) st=7.5;

// расчет цены одного экземпляра вышивки
form1.res1.value=Math.ceil((form1.ns.value*st*(1+(form1.nc.value-1)/10))/1000);
// расчет стоимости всего теража
form1.res2.value=form1.hm.value*form1.res1.value;
}
</script>

В этом скрипте:
st – стоимоть 1000 стяжков,
Math.ceil() – функция для округления результата в большую сторону.
Данный скрипт полезен всем разработчикам сайтов. Конструкция скрипта проста и понятна, поэтому вы с легкость сможете изменить его, подстроить по Ваши нужды или под нужды Ваших заказчиков.

Вот и закончился наш очередной выпуск. До новых стреч.
Ведущий рассылки, Алексей Голубев.
При публикации информации из рассылки Вам следует указывать действующую ссылку на нее.



В избранное