Ir para conteúdo

POWERED BY:

Arquivado

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

amandamarinac

Vários selects em um textarea

Recommended Posts

Olá, tenho o seguinte código:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "[url=http://www.w3.org/TR/html4/loose.dtd]http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript">
 
function alimentarCampo(){
var e = document.getElementById("produto");
var itemSelecionado = e.options[e.selectedIndex].text;
document.getElementById("itens").innerHTML = itemSelecionado;
var a = document.getElementById("valor");
var valorSelecionado = a.options[a.selectedIndex].text;
document.getElementById("total").value = valorSelecionado;
}
</script>
</head>
<body>
 
 
 <form class="cadpedido" method = "post">     
 
 
Produto: <select name="produto" id="produto">
<option value="queijo">Pastel de queijo</option>
<option value="pizza">Pastel de pizza</option>
<option value="carne">Pastel de carne</option>
 </select>
 
 
Valor: <select name="valor" id="valor">
<option value="1">1,00</option>
<option value="2">2,00</option>
<option value="3">3,00</option>
<option value="4">4,00</option>
<option value="5">5,00</option>
<option value="6">5,00</option>
<option value="7">7,00</option>
 </select>
 
 
<input type="button" onclick="alimentarCampo()" value="Adiciona"><br/><br/> 
 
 
Itens do Pedido: <br/><br/>
<textarea name="itens" id="itens" cols="80" rows="7" ></textarea>  <br/><br/>
 
Total: <br/><br/>  <input type="text" name="total" id="total" size="5" value = "${vendas.total}"/>
</body>
</html>

E quando eu clico em "adicionar", o JavaScript coloca o item selecionado nos "Itens do pedido".

 

O problema é que ao selecionar outro item e clicar em adicionar, ele substitui o que já estava lá, e eu precisava que ele fosse adicionando..

Alguém sabe como resolver ou já fez algo parecido?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloque isso

document.getElementById("itens").innerHTML += itemSelecionado+'\n';

no lugar disso

document.getElementById("itens").innerHTML = itemSelecionado;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai precisa mudar mais

inves de pegar o texto do option, pegue o valor dele

e se for por valor quebrado (4.70) use ponto para separar os decimais. isso no value

no texto que aparece pode continuar com virgula

 

o js fica assim

(esse é uma das formas de fazer isso, tentei mudar menos possivel seu codigo, e pode ter formas melhores de fazer a mesma coisa)

valorSelecionado = 0;
function alimentarCampo() {

    var e = document.getElementById("produto");
    var itemSelecionado = e.options[e.selectedIndex].text;
    document.getElementById("itens").innerHTML += itemSelecionado + '\n';
    var a = document.getElementById("valor");
    valorSelecionado += parseFloat(a.value);
    document.getElementById("total").value = valorSelecionado;
}

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.