Ir para o conteúdo

Publicidade

 Estatísticas do Fórum

  • 0 Usuários ativos

    0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

Foto:

Atualizando campo input em um formulario

  • Por favor, faça o login para responder
18 respostas neste tópico

#1 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 09:17

Bem galera seguinte...

Eu tenho um formulario onde um dos campos e um menu select ( onde as opçoes vem de um select do banco de dados).

O campo input abaixo deste menu select é um campo onde o valor tem ser = ao valor correspondente selecionado no menu select.



Alguem pode me ajudar?
  • 0

#2 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 12 novembro 2008 - 09:39

pelo que eu entendi você pode fazer da seguinte maneira:

< select name="tipo" onchange="document.getElementById('recebe').value = this.value" >
<option value='1'>VALOR</opcion>
</select>

<input name="recebe" id="recebe" type="text" value="" />

no evento "onchange", você vai estar atribuindo o valor selecionado a um input.


Espero que isto te ajude. :bye:
  • 0

#3 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 09:46

humm tipo assim:

O menu select vem de uma tabela do banco de dados.

q tem os campos Id, nome, numero

O menu select exibe os nomes --- ok

no imput debaixo eu kero exibir o numero relacionado ao nome selecionado no meu acima moro?
  • 0

#4 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 12 novembro 2008 - 09:58

é isso ai, é como foi descrito acima.

pode fazer que vai funfar, vai dar certo.

qualquer coisa estamos ai :joia:
  • 0

#5 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 10:38

amigo eu fiz assim oh e nao funfo.

<option value="0"  selected> << Selecione a ADME ></option>
		  <? while($array = mysql_fetch_array($sql_adme)) 
	  {?>
		  <option value="<?echo $array['id'];?>" onChange="document.getElementById('kmeb').value = <? $array['km'];?>"><?echo $array['numero'];?> </option>
		  <? } ?>
					  </select>
					  </label></td>
				  </tr>
				  <tr>
					<th height="26" scope="row"><div align="right" class="style5"><span class="style11">KM / EB -</span>&nbsp; </div></th>
					<td><input name="kmeb"  type="text" id="kmeb" value=""></td>
				  </tr>

  • 0

#6 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 12 novembro 2008 - 10:58

a sim,
você coloca o evento na tag select

< SELECT name="tal" onchange="parametro" >

e não no option
  • 0

#7 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 11:35

hum nao entendi :/ onde no codigo acima eu colocaria ? pode me apontar por favor?


vlwl
  • 0

#8 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 12 novembro 2008 - 11:47

Claro mano,

faz assim,

javascript
<script type="text/javascript">
function retornadado( valor ){
   document.getElementById("+ id_do_imput +").value = valor;
}
</script>

Bem, acima você vai esta criando uma função somente para pegar o dado da select e enviar para o input.
Agora na select você faz assim.
<select name="tal" onchange="retornadado( this.value )">
	   <option value="valor">VALOR</option>
	</select>

é isso ai, tenta ai, qualquer coisa estamos ai. :thumbsup:
  • 0

#9 hantaro

hantaro

    Hantaro

  • Membros
  • 164 posts

Postado 12 novembro 2008 - 12:00

entre as tags <head> e </head> do seu site coloque isso:

<script type="text/javascript">
function valor(value){document.getElementById('kmeb').value = value;}
</script>

e na hora de criar seu otion pelo PHP faça assim:

<option onclick="valor('X');">OPTION</option>

Onde X é o numero que voce quer que apareça no input-

No seu codigo fica assim:

<option value="0"  selected> << Selecione a ADME ></option>
<? while($array=mysql_fetch_array($sql_adme)){?>
<option onclick="valor('<? $array['km'];?>');"><? echo $array['numero']; ?></option>
<? } ?>
</select>
</label></td>
</tr>
<tr>
<th height="26" scope="row"><div align="right" class="style5"><span class="style11">KM / EB -</span>&nbsp; </div></th>
<td><input name="kmeb"  type="text" id="kmeb" value=""></td>
</tr>

Ops, nao vi que o Renato já tinha feito uma solução parecida , mas de qualquer jeito, fica ai o codigo
  • 0

#10 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 12:27

tipo como ficaria esse codigo q você me passo eu usando o array do sql q eu fiz no meu codigo? pode me mostrar?
  • 0

#11 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 13:09

opa, amio funciono em parte ..... no FF funciona normal, porem no IE nao esta funcionando :/
  • 0

#12 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 12 novembro 2008 - 14:06

acho que agora vai funcionar
acabei de fazer este código e testei, e funcionou.
<script type="text/javascript">
	function aplicaValor( valor ){
		document.getElementById('nome').value = valor;
	}
</script>

<select name="tipos" onchange="aplicaValor(this.value)">
	<option value="">Selecione</option>
	<option value="valor 1">VALOR 1</option>
	<option value="valor 2">VALOR 2</option>
	<option value="valor 3">VALOR 3</option>
</select>
<input type="text" name="nome" id="nome" value="" />
aplica este codigo na sua realidade que vai dar certo
  • 0

#13 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 14:09

obs: usando esse código do hantaro ae
  • 0

#14 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 14:27

hum adaptei renato seu codigo funciono normal, to curioso pq o codigo do hantaro so funciona no ff :/
  • 0

#15 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 12 novembro 2008 - 15:13

sim é verdade
isso se dá por que quando se coloca o evento no option o firefox interpreta normalmente.
já o IE não faz isso, eu pessoalmente não gosto do IE.

mas é isso ai.


espero ter te ajudado.


Qualquer coisa estamos ai :bye:
  • 0

#16 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 12 novembro 2008 - 16:06

renato sem kere abusar :P tem um problema .... ta cadastrando normal e ele ta jogando os valores devidos normal .... porem como ele seta o valor do campo select de acordo com o selecionado no banco de dados os 2 campos fica com o mesmo valor :/ o certo serial o valor q é o nome q aparece no select tem q ser = o nome q aparece mesmo ja o valor q o outro campo vai obter q tem q ser o valor relacionado :/
  • 0

#17 hantaro

hantaro

    Hantaro

  • Membros
  • 164 posts

Postado 12 novembro 2008 - 17:59

Nossa! Deixei essa passar batido, já acostumei ver meus codigos php rodarem em todos os navegadores, que nem lembrei de testar o codigo no IE. Tambem nao gosto muito dele, esse negocio ai do evento no option eu nao sabia, é porque eu começei a estudar javascript a 2 dias, ai num manjo nada, mas Renato, essa parte a do this.value eu nao entendi, daria pra voce me explicar, e tambem sobre esse evento ai do onchange
  • 0

#18 Renato Machado de Menezes

Renato Machado de Menezes
  • Membros
  • 49 posts

Postado 13 novembro 2008 - 07:22

ixi explico demais velho.

quando eu utilizo o termo this, eu estou dizendo para a função que eu estou passando este valor, no caso, este valor do select, ou do input e tal.
o evento onchange, que significa, quando eu mudar o estado, me da a possibilidade de, depois que eu selecionei e este campo perde o foco, ele vai disparar um evento, em que eu possa aplicar uma funcionalidade como esta.

mano, tem um site muito bom para consultar muitas coisas, é o www.w3schools.com. lá tem assuntos sobre javascript, css, php, DOM, xml e por ai vai.

da uma olhada lá que você vai gostar. :joia:
  • 0

#19 Miloxsan

Miloxsan
  • Membros
  • 22 posts

Postado 13 novembro 2008 - 16:00

bem issu resolve parcialmente meu problema porem eu teria q fazer uma gambiarra de select no sql pra mim poder fazer os cadastros certos no banco de dados ..... eu axo que vou ter q busca fazer issu com ajax .... alguem tem alguma noção / dica pra me dar?
  • 0