Ir para conteúdo

Arquivado

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

caio1380

[Resolvido] Preencher campo automaticamente

Recommended Posts

Boa Tarde,

 

Estou com a seguinte duvida.

Tenho os campos A, B e C para o usuário preecher.

O campo D é igual A+B+C.

 

Sem fazer nenhum tipo de input, como faço para na hora que o usuário tiver digitando já ir aparecendo a resposta no campo D.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

acesse a propriedade .value dos campos A,B,C e concatene, jogando no .value do campo D

pode usar o evento: onblur() de cada campo para disparar a sua função.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<head>
<script type="text/javascript">
function preencher_d( el )
{
	document.getElementById('d').value += el.value;
}
</script>
</head>
<body>

	<label>A <input type="text" name="a" onblur="preencher_d( this )" /></label>
	<label>B <input type="text" name="b" onblur="preencher_d( this )" /></label>
	<label>C <input type="text" name="c" onblur="preencher_d( this )" /></label>
	<label>D <input type="text" name="d" id="d" disabled="disabled" /></label>

</body>

isso é javascript e não JAVA existe uma diferença enorme entre essas duas linguagens.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela ajuda.

 

No meu exemplo eu usei A+B+C = D

 

Porem é um pouco mais complexo. D é resultado de uma série de combinações envolvendo pelo menos 6 variáveis.

 

Tem como implementar essa formula no D?

 

obrigado novamente

 

At..

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, estude o exemplo que te passei e implemente.

Volte com dúvidas, e não pedindo código pronto.

 

Se você não tentar fazer, não vou ficar 'fazendo por você'.

Se precisar de suporte particular, sugiro que procure algum profissional no mercado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamo lá...

 

Por enquanto não consegui fazer funcionar..

Coloquei a função no head, porem estou em duvida sobre o que seria o "el" e "el.value".

Outra duvida é quanto ao "(this)", tenho que substituir por algo? Ou é assim mesmo?

 

A formula para calculo do D eu coloco nesta linha?

<label>D <input type="text" name="d" id="d" disabled="disabled" /></label>

Obrigado!

 

At.

Compartilhar este post


Link para o post
Compartilhar em outros sites

'el' de elemento.

.value é o atributo value do input.

 

this, se refere ao elemento atual. No caso, o elemento em que a função foi chamada.

Não entendi oque você quis dizer sobre 'fórmula do cálculo', pode colocar essa fórmula na function mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<head>
<script type="text/javascript">
function preencher_d( el )
{
        document.getElementById('d').value += el.value;
}
</script>
</head>
<body>

<input type="text" id="a" name="a" onblur="preencher_d( this )" class="campo"/>
<input type="text" id="b" name="b" onblur="preencher_d( this )" class="campo"/>
<input type="text" id="c" name="c" onblur="preencher_d( this )" class="campo"/>

<input type="text" id="d" name="d" disabled="disabled" class="campo"/>

</body>

 

 

 

Ainda não consegui fazer funcionar...

 

Minha principal duvida e onde eu escrevo a formula Ex:(A * B / C * A % B = D)

Compartilhar este post


Link para o post
Compartilhar em outros sites

preencha os campos, e clique no calcular

<head>
<script type="text/javascript">
function id( el ){
	return document.getElementById( el );
}
function calcular( el )
{
	var a = id('a').value;
	var b = id('b').value;
	var c = id('c').value;
	
	id('d').value = a * b /c * a % b;
}
</script>
</head>
<body>

	<input type="text" id="a" name="a" />
	<input type="text" id="b" name="b" />
	<input type="text" id="c" name="c" />

	<input type="text" id="d" name="d" disabled="disabled" />
	<input type="button" name="calcular" value="calcular" onclick="calcular()" />

</body>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora sim!!

 

MUITO OBRIGADO!

 

Willian,

 

Como faço para fazer log10 em javascript.

 

Achei alguma soluções na internet.

 

Mais nenhuma funcionou.

 

javascript:Math.log(N)/Math.log(10)

log(10)(numero)

 

Obrigado

 

Se for só log funciona.

 

id('resultado').value = Math.log(a);

 

 

agora se colocar o 10 já nao funciona mais

 

ninguem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Willian,

 

Eu já havia pesquisado e achado a classe Math. Porem não estava conseguindo fazer funcionar, mais agora percebi que era apenas um erro de digitação.

 

Aproveito para tirar mais uma duvida.

Estou com problemas para somar, pois está concatenado.

 

O certo: 2 + 2 = 4

Como está: 2 + 2 = 22

 

Como faço para resolver este problema?

 

Obrigado novamente.

 

At.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se o Javascript está reconhecendo como inteiro, float ou string..

 

por isso que existem os métodos: parseInt() e parseFloat()

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema acorre quando eu tento executar um operação assim: "e+270"

 

Tenho que transformar o b ou o 270 em Float?

Obs: o "e" terá casas decimais.

 

Se tranformo o b ele da erro NaN, se tranformo o 250.58 continua igual...

 

Como está:

 

id('resultado').value =a-(9.3+((Math.log(b*0.422))/(Math.log(10))-1)/10)+((-13.12)*(Math.log(e)+parseFloat('273'))/(Math.log(10))+(parseFloat('34.55')));

Modo correto em excel:

= a-(9,3+((LOG10(b*0,5)-1)/10)+(-13,12*LOG10(e+273)+34,55)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoal, sou novo aqui no forum, e minha duvida eh o seguinte, eu to querendo fazer mais ou menos isso aqui:

 

<head>

<script type="text/javascript">

function preencher_d( el )

{

document.getElementById('d').value += el.value;

}

</script>

</head>

<body>

 

<label>A <input type="text" name="a" onblur="preencher_d( this )" /></label>

 

<label>D <input type="text" name="d" id="d" disabled="disabled" /></label>

 

</body>

 

so que ao invez de ir para o campo d o que eu escrevo no campo a, eu quero que tipo , eu tenho um cadastro de categorias, e essa categoria tem um codigo, ao digitar o codigo da categoria, no campo D vai o nome da categoria para lá, alguem poderia me ajudar com esse problema.

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.