Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sergiowebdesigner

Calcular dados do formulário

Recommended Posts

Olá pessoas, sou leigo em Java Script, preciso da ajuda de vocês, criei um formulário que contém botões checkbox e radio e select, é um formulário de um restaurante nele tenho um sistema de marmita on line onde o usuário monta sua mamirta, tenho dois java scripts um que calcula o valor total dos produtos selecionados e um que calcula o valor total dos produto mais o valor da marmita, porém não consigo, só consigo somar os valores do "radio" e do "checkbox", não consigo somar os valores do select, o mais importante é adicionar o calculo do select, mas se puderem me ajudar a colocar uma opção limpar dados selecionados eu também agradeço, obrigado...

 

segue um link com exemplo.:http://sergiowebdesigner.com/calculamarmita/

 

 

 

 

 

<body id="def">
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){ // ESTE SOMA O VALOR TOTAL
var price =10.00; //Valor base
$('.rule input[type=radio],input[type=checkbox]').change(function() {//verifica radio
checkeds = $(".rule").find("input[type=radio]:checked,input[type=checkbox]:checked")
var plus = 0;
for(var i =0; i<checkeds.length;i++)
{
plus += parseFloat($(checkeds).attr("value"));//pega o valor do value
}
//arrumando as casas decimais
var rounded = Math.round((plus+price)*100)/100;
return $('.item_price_total').html(rounded);//imprime
});
});//]]>
</script>
</div>
<form>
<h4 class="acc_trigger">Arroz</h4>
<!-- ARROZ -->
<div class="contentText acc_container">
<table border="0" cellspacing="2" cellpadding="2" width="100%">
<tr>
<td id="rule_2 " class="rule"><img src="#" alt="" align="left" width="60" />
<input data-preco="0" id="" name="item" type="radio" value="0">
   Arroz Branco   <span class="inputRequirement"></span></td>
<td id="rule_2 " class="rule"><img src="#" alt="" align="left" width="60" />
<input id="" name="item" type="radio" value="0.50">
   Arroz Carreteiro  <span class="inputRequirement">(Acréscimo de R$ 0,50)*</span></td>
</tr>
</table>
</div>
<!-- END ARROZ -->
<h4 class="acc_trigger">Feijão</h4>
<!-- FEIJÃO -->
<div class="contentText acc_container">
<table border="0" cellspacing="2" cellpadding="2" width="100%">
<tr>
<td id="rule_2 " class="rule"><img src="#" alt="" align="left" width="60" />
<input id="" name="choise_items[3][]" type="radio" value="0">
   Feijão Caldo   <span class="inputRequirement"></span></td>
<td id="rule_2 " class="rule"><img src="#" alt="" align="left" width="60" />
<input id="" name="choise_items[3][]" type="radio" value="0">
   Feijão Tropeiro  <span class="inputRequirement"></span></td>
</tr>
</table>
</div>
<!-- END FEIJÃO -->
<h4 class="acc_trigger">Acompanhamentos</h4>
<div class="contentText acc_container">
<table border="0" cellspacing="2" cellpadding="2" width="100%">
<tr>
<td class="fieldKey"></td>
<td id="rule_2 " class="rule" width="250"><img src="#" alt="" align="left" width="50" alt="0.50" />
<input id="" name="item" type="checkbox" value="0.50">
 Fritas   <br />
<span class="inputRequirement">(Acréscimo de R$ 0,50)*</span></td>
<td id="rule_2 " class="rule" width="250"><img src="#" alt="" align="left" width="60" />
<input id="" name="item" type="checkbox" value="0.50">
 Banana a milanesa  <span class="inputRequirement">(Acréscimo de R$ 0,50)*</span></td>
<td id="rule_2 " class="rule" width="250"><img src="#" alt="" align="left" width="60" />
<input id="" name="item" type="checkbox" value="0.50">
 Farofa de ovos  <span class="inputRequirement">(Acréscimo de R$ 0,50)*</span></td>
</tr>
</table>
</div>
<table border="0" cellspacing="2" cellpadding="2" width="100%">
<td class="" width="250" align="left"><img src="#" alt="" align="left" width="60" />
<!--<input type="checkbox" name="gender" value="0.50" />-->
<span class="beb">Refri lata (R$ 3,00)  </span> <span class="quant_">Quantidade:a </span>
<select class="sel_beb">
<option value="0.50" data-value="0.50" >1</option>
<option value="6.00">2</option>
<option value="9.00">3</option>
<option value="10.00">4</option>
<option value="13.00">5</option>
<option value="16.00">6</option>
<option value="19.00">7</option>
<option value="22.00">8</option>
<option value="25.00">9</option>
<option value="28.00">10</option>
</select>
<span class="inputRequirement"></span></td>
</tr>
</table>
</div>
<div class="buttonSet"> <span class="buttonAction"><span class="tdbLink">
<button id="tdb5" type="submit" class="bannerbtn">COMPRAR MARMITA</button>
<span class="result">Total de acréscimos: R$ </span>
<input id='result' type="text" value='0' />
<br />
<br />
<h3>Valor Total:
<p class="item_price_total"><!-- Valor total aqui -->0</p>
</h3>
</div>
<!-- Start JavaScript-->
<script src="jquery.js"></script>
<script>
function sumChecked() { // ESTE SOMA O VALOR DOS ACRÉCIMOS
var result = $("input:checked");
var total = 0;
for (var i=0;i<result.length;i++)
{
total = total+parseFloat(result.value);/* ---- pega o value ----*/
}
$("#result").val(total.toFixed(2));
}
sumChecked();
$(":radio").click(sumChecked);
$(":checkbox").click(sumChecked);
</script>
<!-- END MARMITA -->

Compartilhar este post


Link para o post
Compartilhar em outros sites

o select trabalha com selected e não com checked.

 

como vc ta disparando no onchange, separe os comportamentos. Uma função para radios e checks, e outra para os selects.

ai vc pega o $(this).val()

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.