Калькулятор в форме
Есть такой калькулятор, точнее форма
<form class="kalk" onsubmit="return false" oninput="summ.value = parseInt(ploshad.value) * parseInt(faktura.value) + parseInt(corner.value)" >
<p>Фактура:</p>
<select type="text" name="faktura" id="faktura" size="1" onchange="summ.value = parseInt(ploshad.value) * parseInt(faktura.value) + parseInt(corner.value)">
<option selected value="600">Белый матовый</option>
<option value="650">Белый сатиновый</option>
<option value="650">Белый глянцевый</option>
<option value="700">Цветной матовый</option>
<option value="700">Цветной сатиновый</option>
<option value="700">Цветной глянцевый</option>
</select>
<p>Площадь комнаты, кв. м.</p>
<input type="range" min="1" max="30" step="1" id="ploshad" name="ploshad"
value="4" oninput="o.value = parseInt(ploshad.value) " >
<p class="output"><output name="o">4</output> </p>
<p>Количество углов:</p>
<select type="text" name="corner" id="corner" size="1" onchange="summ.value = parseInt(ploshad.value) * parseInt(faktura.value) + parseInt(corner.value)">
<option selected value="400">4</option>
<option value="500">5</option>
<option value="600">6</option>
<option value="700">7</option>
<option value="800">8</option>
<option value="900">9</option>
<option value="1000">10</option>
</select>
<p class="summa">Стоимость:
<output name="summ" id="summa"></output>
руб.</p>
</form>
в действии можно посмотреть здесь: http://potolok2014.ru/ проблема: КАК СДЕЛАТЬ ТАК ЧТОБ ПРИ СУММЕ МЕНЕЕ 5000, В <output name="summ" id="summa"></output> ВСЕ-РАВНО ВЫВОДИЛОСЬ 5000, А ДАЛЬШЕ УЖЕ СЧИТАЛ КАК СЧИТАЕТ СЕЙЧАС? Прошу помощи знатоки... |
iskander83, не смущает что <output> не поддерживается старыми браузерами?
|
это
var summ = ploshad.value * faktura.value + corner.value; summ.value = (summ < 5000) ? 5000 : summ; как я поныл надо в js вставлять? в теории то понятно надо выхватить значениеи поставить условие, а вот как на практике написать? пробую так , но что то не получается
$('#ploshad').mouseup(function() {
var parent = $(this).parent('form');
_ploshad = $(parent).find('#ploshad');
_summa = $(parent).find('#summa');
ploshad = $(_ploshad).val();
if (ploshad <= 7) alert('!!!!!!!!!!!!!!!!!!!!!!!')
else.........
|
output не смущает
|
так я понял кое что
$('#ploshad').mouseup(function() {
var parent = $(this).parent('form');
_summ = $(parent).find('#summa');
summ = $(_summ).text();
if (summ <= '5000') alert('!!!!!!!!!!!!!!!!!!!!!!!')
else
summa = ..........;
});
summ у нас текстовое значение, у него нет value, теперь надо преобразовать в число... |
полностью убрал вычисления из формы и написал скрипт но не пойму почему выдает NaN
<script>
function isCount() {
var parent = $(this).parent('form');
_ploshad = $(parent).find('#ploshad');
_faktura = $(parent).find('#faktura');
_corner = $(parent).find('#corner');
ploshad = $(_ploshad).val();
faktura = $(_faktura).val();
corner = $(_corner).val();
summa = (+ploshad * +faktura) + (+corner);
itog = ( Math.round(summa) );
if (summa <= 5000) alert(summa)
else
alert(itog*2) ;
};
</script>
|
ПРОШУ ПОМОЩИ!!!:help:
|
Так все работает
function isCount() {
var parent = $(this).parent('form');
ploshad = $('#ploshad').val();
faktura = $('#faktura').val();
corner = $('#corner').val();
summ = (+ploshad * +faktura) + (+corner);
itog = ( Math.round(summ) );
if (summ <= 5000)
document.getElementById('summa').innerHTML = 5000;
else
document.getElementById('summa').innerHTML = summ; ;
};
|
Спасибо всем кто помог!
|
| Часовой пояс GMT +3, время: 02:27. |