Ir para conteúdo
Fórum Script Brasil
  • 0

Fazer caulculo


arldin

Pergunta

13 respostass a esta questão

Posts Recomendados

  • 0
concerteza não precisava por esse codigo imenso ai <.<...

E qual o problema em fazer porcentagem?? Tu poderia pegar o valor total, dividir por 100 e multiplicar pela porcentagem que tu quer. Ex: (total/100)*porcentagem

Qual seria o problema?

T+

O que eu estou querendo e o sequinte la no campo que aparece o valor total

eu quero criar outro campo que quando for aparecendo o valor total apareça a porcemtagem do total e um outro campo onde irar aparecer a soma geral

Ex total R$100,00

frete R$ 10,00(seria 10%)

geral R$ 110,00

seria isto como faço

Link para o comentário
Compartilhar em outros sites

  • 0

Eu que ia responder Jonathan Queiroz >.> asudhusahduashudhasuhduashas Brincadiera :P

Bom, já que ele já deu o script pronto, vou fazer o que faco de melhor: explica-lo :P

Bom, quando se trata de porcentagem, é praticamente impressindivel o uso de numeros de ponto flutuante ex: 1,5 22,0 55,8.... e por ai vai.

Por que? quanto é 2% de 5? ^^ quanse qualquer porcentagem que tu vai tira vai sair numero de ponto flutuante.

Nos campos de texto do HTML, todo e qualquer qualquer caracter que entra nele, é convertido para string... So para lembrarmos, string é texto e a+a = aa da mesma forma "5"+"5"="55" ^^

Sendo assim, o primeiro passo é pegar os dados dos campos de texto e transformálos em numero... Pelo que intendi, você tera 3 campos diferentes que seriam o total, frete e geral. O geral, nós não vamos precisar pegar nenhum dado dele, precisamos apenas somar a porcentagem com o total e colocar no geral...

então sabemos que precisamos pegar valores de total e frete, tirar a porcentagem de frete sobre total e mostrar num terceiro campo chamado porcentagem.

Comecamos assim:

var total = parseFloat(document.getElementById("total").value);//pegamos uma referencia ao campo total...parseFloat transforma string em numero de ponto flutuante. 
var frete = parseFloat(document.getElementById("frete").value)//pegamos uma referencia ao campo frete...
//agora vamos descobrir quantos porcento frete é de total:
var porcentagem = total*frete/100;

//Agora para colocarmos no campo que mostra-ra a porcentagem:
document.getElementById("campoPorcentagem").value = porcentagem;

//e por ultimo, mostramos o geral que e o total+porcentagem...
document.getElementById("geral").value = total+porcentagem;

Acho que é isso cara... Se eu entendi errado sua pergunta, so fala :P

T+

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado pela força,mais não deu certo

Talves eu não expliquei direito

O que eu estou tendando fazer e o sequinte

La no totalgeral eu quero que o valor dele seja multipricado pelo frete que sera de 10%

ao mesmo tempo em que vai sendo inserido nos outros campos.

E ai aparecer um campo que apareça o valor do frete e depois um outro campo aparecendo

o total do campo totalgeral, frete e valor total

Link para o comentário
Compartilhar em outros sites

  • 0
Puts, agora sim complico de vez :P

Cara, faz assim: Cria o codigo html da maneira como tem que ser, ou desenha... porque so falando assim ta dificil :S

Ai com o codigo html feito, eu bolo as funcoes pra ele e pronto! hehehehe

T+

Vou posta o link

para visualizar o formulario

Espero que ajude a entender o que esu estou querendo

La no final onde tem o total e que eu estou querendo inserir os outros campos

que seria o valor do frete e o total já incuido o frete

que ficaria assim

Total R$ 100,00

Frete R$10,00

Total com frete 110,00

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, o script que postei ali em cima "funcionaria" pra isso que tu quer :S So que tem que criar o campo frete com o id=frete e o campo total com frete com o id=geral.

Se quiser que eu faca a funcao funcionar, posta o codigo da sua pagina aki, senao não tem como eu apenas "achar" que vai funcionar.

T+

Link para o comentário
Compartilhar em outros sites

  • 0
Cara, o script que postei ali em cima "funcionaria" pra isso que tu quer :S So que tem que criar o campo frete com o id=frete e o campo total com frete com o id=geral.

Se quiser que eu faca a funcao funcionar, posta o codigo da sua pagina aki, senao não tem como eu apenas "achar" que vai funcionar.

T+

Ela esta postada la encima,gostaria pela ajuda

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0
Cara, o script que postei ali em cima "funcionaria" pra isso que tu quer :S So que tem que criar o campo frete com o id=frete e o campo total com frete com o id=geral.

Se quiser que eu faca a funcao funcionar, posta o codigo da sua pagina aki, senao não tem como eu apenas "achar" que vai funcionar.

T+

Ela esta postada la encima,gostaria pela ajuda

Obrigado

Olha eu coloquei esta outra função e resolveu em partes o que eu queria

Ela amostra o sub total direto, mais eu tenho que digitar o valor paraela me da o total com o frete ao invés de já fazer direto

Este e o que eu inclui

function valorLiquido(liquido,bruto,frete,total){

var vbruto = parseFloat(eval(bruto.value));

var vfrete = parseFloat(eval(frete.value));

var vtotal = parseFloat(eval(total.value));

liquido.value = 0;

if ( bruto.value == 0){

vbruto = 0;

}else{

liquido.value = bruto.value;

}

if ( frete.value == 0){

vfrete = 0;

}

total.value = 0;

if ( frete.value == 0){

vfrete = 0;

}else{

total.value = frete.value;

}

if ( frete.value == 0){

vfrete = 10;

}

var retorno = (vbruto / vfrete);

liquido.value = retorno.toFixed(2);

var retorno = (bruto.value*1) + (liquido.value*1);

total.value = retorno.toFixed(2);

return texto;

}

E este e o que eu chamo

<td></td>

<td></td>

<td></td>

<td></td>

<td>Sub total</td>

<td><input id=totalgeral type="text" name="tfvbruto" onChange="valorLiquido(tfvliquido,this,tfvfrete,tfvtotal);" SIZE="9"></td>

</tr><tr>

<td></td>

<td></td>

<td></td>

<td><input type="Hidden" name="tfvfrete" onChange="valorLiquido(tfvliquido,tfvbruto,tfvtotal,this);" SIZE="9"></td>

<td>Total do frete</td>

<td><input ID="tfvliquido" type="text" name="tfvliquido" SIZE="9"></td>

</tr><tr>

<td></td>

<td></td>

<td></td>

<td></td>

<td>total</td>

<td><input ID="tfvtotal" type="text" name="tfvtotal" SIZE="9"></td>

Ele amostra o valor mais não esta fazendo a soma direto

alguém pode me da uma luz

Link para o comentário
Compartilhar em outros sites

  • 0
não testei esse seu script, mas sera que não seria isso:

<td><input id=totalgeral type="text" name="tfvbruto" onChange="valorLiquido(tfvliquido,this,tfvfrete,tfvtotal);" SIZE="9"></td>

ali em vez de this, não deveria ser this.value?

T+

Testei mais ai da value nulo

Link para o comentário
Compartilhar em outros sites

  • 0
não testei esse seu script, mas sera que não seria isso:

<td><input id=totalgeral type="text" name="tfvbruto" onChange="valorLiquido(tfvliquido,this,tfvfrete,tfvtotal);" SIZE="9"></td>

ali em vez de this, não deveria ser this.value?

T+

Testei mais ai da value nulo

da value nulo mesmo digitando algo no campo text?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...