last day (15 days later) » 

12:55 PM
1
A: Calculo de cubagem com jquery

SergioÉ importante achares uma maneira de fazer isso que seja escalável. Ou seja: tenha o mesmo código independentemente do numero de linhas. Isso implica depender menos de ID's que são por natureza únicas. Sugestão de código: $(document).ready(function () { $('#formularioMateriais').on('keyup', '...

 
Aqui não esta calculando, fica sempre 0
 
@Tiago repara que estou a usar classes. Então tive de adicionar classe volumeMaterial no primeiro input, e também mudei de ID para class no input total de cada linha.
 
ele esta calculado somente uma linha, veja i.imgur.com/uXSRjGT.png
Coloquei os dois codigo juntos. O de add nova linha e o seu de calculo. No meu arquivo o add nova linha funciona, mas nesse link não, mas da para você ver como é. veja jsfiddle.net/xp3v2grg/1
Acho que o problema é do clone. Eu dupliquei manualmente e funciona, veja jsfiddle.net/xp3v2grg/4
 
@Tiago: este funciona: jsfiddle.net/xp3v2grg/6, usando delegação como sugerí na resposta.
 
bom dia.Seu código funcionou, mas tem um detalhe. Ex, adiciono linhas a soma fica certinha! Mas quando excluo alguma linha não faz o recalculo.
 
12:55 PM
 
Funcionou :), mas encontrei outro falha...rsrs, como os valores colocados ali são em metros para descobrir o peso cubico, não aparece o resultado certo. Ex: 1.50 x 1.50 x 1.50 = 3.375 no resultado esta aparecendo 1
 
@Tiago usa parseFloat em vez de parseInt -> jsfiddle.net/xp3v2grg/8
@Tiago conseguiste resolver?
 
Opa bom dia Sergio
Eu estava escrevendo...
Funcionou perfeitamente! isso que vou perguntar é somete um detalhe. Usando o exemplo Ex: 1.50 x 1.50 x 1.50 = 3.375 aparece o valor correto de três dígitos após o ponto no peso. Mas se eu dobro por exemplo, o resultado é 6.75 quando é zero no final não aparece. É fazer com que apareça?
 
É uma questão de formatação
o JavaScript remove zeros em partes decimais de numeros
se fosse string já aparecia mas não dá para clacular string * string
se fôr mesmo importante podes mudar
há muitas perguntas sobre isso no SOpt
já respondi sobre isso umas 2, 3 vezes
 
:)
Onde vejo?
 
1:03 PM
entretanto @Tiago se quiseres podes marcar a resposta como aceite :)
vou procurar
 
Marquei como concluido, muito obrigado
 
esta é parecida, foi a primeira que encontrei
é sobre dinheiro mas o problema é o mesmo
zeroa à direita numa string
26
Q: Como representar dinheiro em JavaScript?

mgibsonbrQual a melhor forma de se representar unidades monetárias (i.e. dinheiro) em JavaScript? Sei que não é bom usar ponto flutuante, dado o problema de arredondamento, mas não sei qual seria a melhor alternativa. Outras linguagens têm tipos Decimal como built-ins, mas até onde eu saiba não tem nada p...

@Tiago e a outra pergunta: pt.stackoverflow.com/q/63716/129
já resolveste? percebeste qual é o problema?
 
Nossa, é bem complexo...rsrs
Acho que vou deixar o zero pra la...rs
mas acredito que seria importante por questão de visualização
 
@Tiago e quantas casa decimais deve ter?
se fôr sempre o mesmo numero é bem fácil
6.75.toFixed(3); dá "6.750"
 
sempre 3 apos o ponto
Porque é a grama
 
1:10 PM
então é isso que escrevi em cima
só tens de mudar
$('#cubagemMateriaisTotal').val(total);
$('#cubagemMateriaisTotal').val(total.toFixed(3));
para
e fica resolvido
ah, e nesta também:
$row.find('input[name="cubagemMateriais[]"]').val(cubagemMateriais || 0);
para
$row.find('input[name="cubagemMateriais[]"]').val(cubagemMateriais.toFixed(3) || 0);
 
Vou testar agora
Fantástico!
Quanto a esse aqui pt.stackoverflow.com/questions/63716/conflito-de-jquery eu resolvi. Era um JS que estava fazendo conflito com outro. Refiz tudo e voltou ao normal.
Eu preciso fazer algo no topico para sinalizar como resolvido?
 
Ok, tenho a sensação que o problema não foi revelado. Mas se tens a certeza coloca uma resposta ou aceita uma que esteja certa para esse problema
 
O problema era com o JS que faz mascara
Nada haver, mas era o meu calo...rs
 
ok
vou lanchar
até breve
 
Nobre, muito brigado
 
1:16 PM
de nada
 

last day (15 days later) »