Ir para conteúdo

POWERED BY:

Arquivado

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

e3tadashi

[Resolvido] Lista de campo <select> dependente de outro c

Recommended Posts

Olá galera!!

 

Estou fazendo uma página onde o administrador terá a opção de adicionar um produto novo nos registros.

 

O produto é classificado por uma categoria e uma subcategoria.

 

Na hora do cadastro, existem 2 campos <select>, um para categoria, e outro para a sub.

 

Mas quero que os <option>'s da sub dependam da categoria que ele escolher no <select> anterior.

 

Até ele escolher uma categoria, o <select> da sub deve ficar em branco. E dps que ele escolhe uma categoria, o <select> da sub carrega a lista de subcategorias referente à categoria escolhida.

 

O problema é que a tag <option> me pareceu pouco flexível para manipulação de seu "display".

Os únicos jeito que consegui mexer em seu atributo de 'display' foi atribuindo-a direto na tag, ou por classe.

 

Mas não sei manipular atributos de classes por javascript, só sei por id's.

 

Há algum jeito de fazer isso que estou tentando via javascript?

Ou só fazendo outro request pro server via php?

 

Segue o trecho do código:

 


<td>
           	<select id="categorie" name="categorie">
               	<option></option>
               	<?php
					$c = 1;
					while($c <= $ctotal){
						echo "
							<option>".$categoria[$c]."</option>
						";
						$c++;
					}
				?>
               </select>
           </td>
           <td>
           <select id="subcategorie" name="subcategorie">
           	<option></option>
           	<?php 

				$sql = "SELECT * FROM categorias";
				$query = mysql_query($sql) or die(mysql_error());
				$c = 1;
				while($resultado = mysql_fetch_assoc($query)) {
					$categoria[$c] = $resultado['categorie'];
					$c++;
				}
				$ctotal = $c-1;
				$c = 1;
				while($c <= $ctotal){
					$sql = "SELECT * FROM subcategorias WHERE categorie = '".$categoria[$c]."'";
					$query = mysql_query($sql) or die(mysql_error());

					while($resultado = mysql_fetch_assoc($query)) {
						echo "
							<option>".$resultado['subcategorie']."</option>
						";
					}
					$c++;
				}
			?>
           </select>
           </td>

 

 

Abraços!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa,

 

uma maneira elegante de fazer combos dependentes, é com ajax. Veja um exemplo:

http://wbruno.com.br/2009/10/06/combos-dependentes-ajax-jquery/

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.