Сообщение от DeathDji
|
Так значит лучше вообще обойтись без php?
|
Это как, форма для кого тогда как не для сервера?
Сообщение от DeathDji
|
Может знаете где можно посмотреть хорошие уроки(подсказки), что то близкое к этому
|
Конкретно к вашему примеру вряд-ли, а вот о всяких калькуляторах тем в сети море. Калькулятор он и в Африке калькулятор, может только условия и логика иная может быть, а так все едино.
Сперва надо не калькуляторы читать, а с html разобраться, так как <table border=1 cellpadding=5 cellspacing=0>
<table>, это ошибка. Поле формы type="
namber" может и появится в HTML505, но в настоящее время только type="
number", у которого нет maxlength=10, зато есть min и мах.
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
$(function() {
$('#load').on('change input', function() {
var e = $(this.elements), //коллекция полей формы
v, f, s = 0, o = $('#info');
e.filter('[required]').each(function() { //обход полей ввода
f = this.name; //текущее поле, по его имени можно определять те или иные операции
this.value = v = +$.trim(this.value) || this.min; //значение не меньше минимального
//расчет и вывод, далее просто пример
s += e.filter('[name="vidlesov"]:checked').data('price') * v;
})
o.text(s)
})
});
</script>
<form id="load">
<table>
<tr>
<td>Вид лесов</td>
<td id="les">
<label><input type="radio" name="vidlesov" data-price="100" value="1" checked=""> ЛРСП-30</label>
<label><input type="radio" name="vidlesov" data-price="200" value="2"> ЛРСП-40</label>
<label><input type="radio" name="vidlesov" data-price="300" value="3"> ЛРСП-60</label>
<label><input type="radio" name="vidlesov" data-price="400" value="4"> ЛРСП-100</label>
</td>
</tr>
<tr>
<td>Длина и высота объекта</td>
<td><input class="block" min="1" max="5" type="number" value="1" name="d" required>
<input type="number" min="1" max="5" name="h" value="1" required></td>
</tr>
<tr>
<p class="cratno">кратно 3</p>
<td>Число рабочих ярусов</td>
<td><input type="number" min="1" max="5" name="yarus" value="1" required></td>
</tr>
<tr>
<td>Комплектация связями</td>
<td>
<label><input type="radio" name="connect" value="0" checked> шахматный порядок</label>
<label><input type="radio" name="connect" value="1"> сплошная</label>
</td>
</tr>
<tr>
<td>Количество подъемов</td>
<td><input name="ascent" type="number" min="1" max="5" value="1" required></td>
</tr>
<tr>
<td>Комплектация опорами</td>
<td>
<label><input type="radio" name="support" value="1" checked> да</label>
<label><input type="radio" name="support" value="0"> нет</label>
</td>
</tr>
<tr>
<td>Комплектация кронштейнами</td>
<td>
<label><input type="radio" name="bracket" value="1" checked> да</label>
<label><input type="radio" name="bracket" value="0"> нет</label>
</td>
</tr>
</table>
<div id="info"></div>
</form>
Здесь для примера - обрабатываются события изменения и ввода полей формы. Из коллекции полей формы берутся обязательные поля и обходятся в цикле .each(). Цены для первой группы кнопок содержатся в атрибутах ее полей - data-price. Аналогично можно хранить цены или корректирующие значения в других группах кнопок. То есть при каждом изменении формы производится расчет.
name="connect" value="0" - значение по умолчанию, удобно будет 0.
name="support" value="1" - значение 1 будет удобно для "да", и 0 для "нет".
Разберетесь с этим, значит сделаете, нет, значит нет. А что там у вас за расчеты, темный лес, и чтобы понять что к чему, нужно знать условия, именно поэтому найти в сети калькулятор именно для вас, это нонсенс. )