Jump to content


Photo

Dúvida Simples


  • Faça o login para participar
5 replies to this topic

#1 Vitor Gomes

Vitor Gomes

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado
  • Localidade:Rio de Janeiro

Posted 02/10/2005, 11:16

Olá pessoal tudo blz? É o seguinte: tenho esse pequeno formulário de compra de uma cama que tem seus items que podem ser habilitados e desabilitados coisa e tal. Só que não consigo somar os items selecionados corretamente. Por exemplo: 100+100=100100 está saindo assim e não 200. Será que alguém poderia me dizer aonde está o erro ou se está faltando alguma coisa.
Obrigado.
<html>
<head><title>Trabalho de Interface Home máquina</title>
<script language="JavaScript">
function mudaPreco()
{
  document.cadCompra.precocabe.value="R$"+document.cadCompra.material.value;
}
function cabec()
{
   if (document.cadCompra.cabeceira.checked==true)
  {
   document.cadCompra.material.disabled = false;
  }
   else
  {
   document.cadCompra.material.disabled = true;
  }
}
function extras()
{
   if (document.cadCompra.edredon.checked==true)
  {
   document.cadCompra.edremodel.disabled = false;
  }
   else
  {
   document.cadCompra.edremodel.disabled = true;
  }
}
function extras2()
{
   if (document.cadCompra.jogocama.checked==true)
  {
   document.cadCompra.jogcama.disabled = false;
  }
   else
  {
   document.cadCompra.jogcama.disabled = true;
  }
}
function somaPrecos()
{
  var i,total,mat,edre,jog;
       for (i=0; i<document.cadCompra.cama.length; i++)
      {
         if (document.cadCompra.cama[i].checked)
        {
  total=document.cadCompra.cama[i].value;
  break;
        }
	
      }
         mat=document.cadCompra.material.value;
         edre=document.cadCompra.edremodel.value;
  jog=document.cadCompra.jogcama.value;
  eval(total=total+mat+edre+jog);
         document.cadCompra.somatotal.value=total;
}
</script>
</head>
<body bgcolor="" onLoad="document.cadCompra.nome.focus()">
<form method="post" name="cadCompra">
<p>Escolha do Modelo:<br>
<br>
<input type="radio" name="cama" value="1000" checked>&nbsp;&nbsp;Solteiro - R$1.000,00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="checkbox" name="cabeceira" onClick="cabec()">Cabeceira<br>
<input type="radio" name="cama" value="1500">&nbsp;&nbsp;Casal - R$1.500,00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<select name="material" disabled onChange="mudaPreco()">
<option value="">Material
<option value="200">Branco
<option value="400">Mogno
<option value="600">Cerejeira
</select><br>
<input type="radio" name="cama" value="2000">&nbsp;&nbsp;Queen size - R$2.000,00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" name="precocabe" value="" size="10" disabled style="height: 20"><br>
<input type="radio" name="cama" value="2500">&nbsp;&nbsp;King size - R$2.500,00<br><br>
EXTRAS
<br><br>
<input type="checkbox" name="edredon" onClick="extras()">Edredon&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<select name="edremodel" disabled>
<option value="">Opções...
<option value="100">Solteiro   - R$100,00
<option value="150">Casal      - R$150,00
<option value="200">Queen size - R$200,00
<option value="250">King size  - R$250,00
</select>&nbsp;
Total:&nbsp;<input type="button" onClick="somaPrecos()" name="total" value="Calcular" size="4"><input type="text" disabled name="somatotal" value="" size="4" parseInt="somaprecos + somatotal"><br>
<input type="checkbox" name="jogocama" onClick="extras2()">Jogo de Cama&nbsp;&nbsp;&nbsp;
<select name="jogcama" disabled>
<option value="">Opções...
<option value="100">Solteiro   - R$50,00
<option value="150">Casal      - R$100,00
<option value="200">Queen size - R$150,00
<option value="250">King size  - R$200,00
</select>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="submit" value="Enviar" onClick="clicar()" name="send">
<input type="reset" value="Limpar" name="clear">
</form>
</body>
</html>


#2 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 02/10/2005, 11:25

Se não me engano tu precisa usar a função parseInt() para fazer esta soma. Ou seja:

var soma = parseInt(100 + 100);

[]’s :DAté mais

#3 Vitor Gomes

Vitor Gomes

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado
  • Localidade:Rio de Janeiro

Posted 02/10/2005, 11:40

Pois é, eu tentei usar essa função parseInt, mas como o formulario tem uns items que deverão ser somados se forem acionados... aew que o meu problema pega. Não seria muito abuso da minha parte, alguém me mandar a linha de código certa pra que essa operção seja efetuada com todos os items incluidos pra sair o valor total? Ficaria muito grato.

Obrigado.

#4 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 02/10/2005, 11:51

Eu teu caso, troque isto:
eval(total=total+mat+edre+jog);
Por isto:
total = parseInt(total + mat + edre + jog);
Acredito que funcione. Se não der, poste novamente ... ;)

[]’s :DAté mais

#5 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 02/10/2005, 12:32

Se não funcionar, tente colocar o parseInt em cada uma das variáveis.
Klaus Paiva
Conheça também: Taperás

#6 Vitor Gomes

Vitor Gomes

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado
  • Localidade:Rio de Janeiro

Posted 02/10/2005, 20:51

Eu teu caso, troque isto:

eval(total=total+mat+edre+jog);
Por isto:
total = parseInt(total + mat + edre + jog);
Acredito que funcione. Se não der, poste novamente ... ;)

[]’s :D

Tentei e não consegui.
Pela ajuda do Klaus, eu não faço a minina ideia como é por ser feito. Sou muito noob.
Seria muito pedir a vcs que mudassem meu codigo??? Ficaria muito grato se vcs me ajudassem.
Obrigado




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq