Ir para conteúdo

Arquivado

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

«Zeca»

Autosoma dos Campos php / Jquery

Recommended Posts

Olá galera é meu primeiro post, estou desesperado saka, não consigo achar nada que resolva meu problema e lembrei de vocês aqui que são os melhores da Web.

 

Enfim, estou fazendo um sistema de pedidos, e tem uma lista dos produtos, e na medida que o Usuario vai digitando a quantidade de Caixas por produto, um campo a frente mostrará a auto soma do pedido, para saber o valor.

 

modelo.jpg

 

Eu até consegui fazer uma função no Jquery para somar, mais como está em um loop dentro do Foreach, ele só soma a primeira linha, nas linhas de baixo ele nao soma..

 

codigo.jpg

 

função do Jquery

$('#valor, #quant').blur(function () {
var valor = $('#valor').val();
var quantidade = $('#quant').val();

if (valor == "")
valor = 0;
if (quantidade == "")
quantidade = 0;

var resultado = (valor) * (quantidade);
$('#result').val(resultado);
})

Então com faço para na medida que o usuario ir colocando as quantidades os campos irem somando sozinho??

 

Desde já agradeço mesmo galera por qualquer esforço e ajuda.

Forte abraço a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Zeca tudo bem cara, não sei se você ja resolveu seu problema mas a solução é você pode utilizar eventos para fazer esta tarefa, eu usaria o onkeyup, exemplo:

<input type="text" onkeyup="calcularQuantidade(this)" value=""/>

Se não funcionar volte aqui que agente acha uma solução

 

@edit: Exemplo usando Jquery

$("input").on("keydown", function(){
     //calculalll
    var valor = $(this).val();  

     $(this).parent().find("#input_quantidade").val(""); // aqui vc procura o input que está no mesmo td
});

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ih galera eu sou bem leigo em Jquery mesmo, ainda nao consegui fazer um laço de repetição das somas dos campos. :(

Abs.

 

 

Olá Zeca pelo que intendi da sua necessidade você não precisa de nenhum looping para calcular. você precisa é se atentar ao evento de quando está inserindo os valores. você tentou usar o que te falei adicionar o evento onkeyup no input que o usuario poe os valores?

 

tente isso:

<input type="text" class="valor" onkeyup="calcular(this)"/>
<input type="text" class="quantidade" onkeyup="calcular(this)"/>

<script>
function calcular(elemento){
     //calculal
    //quando usa o parent()  nos estamos dizendo que queremos voltar um elemento para achar outro
    var valor = $(elemento).parent().find(".valor").val(); 
    var qtd = $(element).parent().find(".quantidade").val();

    var total = valor * qtd; 

     $(elemento).parent().find("#result").val(total); // aqui você procura o input que está no mesmo td e imprime o resultado
}
</script>

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.