Ir para conteúdo

POWERED BY:

Arquivado

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

Lendres2

É possível isso?

Recommended Posts

Amigos,Gostaria de saber se é possível fazer o seguinte: tenho um combobox com dados carregados de uma base mysql através de php e ao lado desse combo teria uma caixa de texto. E quando fosse digitando na caixa fosse filtrando dentro da combobox, tipo ir autocompletando.Espero que tenha ficado entendido.Se alguém souber como fazer, preciso de um help.Fico no aguardo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, hpa como fazer.É um comando meio complicadinho mas tem sim.Infelizmente não sou tão aprofundado em AJAX ainda, mas creio que se procurares por auto complete e talz essas coisas no google você pode axar algo..afinalGIYF =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguém mais tem uma luz, procurei bastante no Google mais não achei nada parecido com o que quero, achei um que filtra, mas em um campo de texto. Isso agilizaria muito pro usuário no meu sistema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade, se os dados do seu combo box for carregado somente quando a página é carregada, não há necessidade de ajax.

 

você terá que criar um FOR, que irá percorrer todas as opções do combobox e verificar semelhaça. Por exemplo.

Se o usuario digitou TES, você deverá verificar e remover as opções incompativeis:

var digitado = document.getElementById('pesquisa').value;if (document.getElementById('combo').options[i].text.indexOf(digitado) == -1) document.getElementById('combo').options.remove(i);
o codigo é algo proximo disso... to enferrujado =(

Abraços t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

o codigo é algo proximo disso... to enferrujado =(

Até que enfim voltou à ativa.Teve muita coisa boa postada durante sua "ausência" ae.. heheté mais...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos,Alguém se habilita a me mostrar como ficaria esse for que o Fleury comentou?Não tenho muita experiência com Javascript! Tenho certeza que isso vai me dar uma boa base.Fico no aguardo de uma alma caridosa.Abraços e obrigado à todos por enquanto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos,

 

Estou no caminho... Mas está dando um pequeno erro...

 

Abaixo o code:

 

O js

 

//Filtra nome dos filmes

function filtratitulo(){

var digitado = document.cad_locacoes.titulo.value;

//alert(digitado);

var i

for (i=0;i<=document.getElementById('filmes').length;i++) {

if (document.getElementById('filmes').options.text.indexOf(digitado) == -1){

document.getElementById('filmes').options.remove(i);

}

}

}

 

O form

 

<div id="form_locacoes" style="display:none;">

<form name="cad_locacoes" id="cad_locacoes" method="post">

<fieldset>

<legend>Locações</legend>

<label for="nome">Cliente:</label>

<select name="clientes" id="clientes" />

<option value="default">Digite ao lado</option>

<?php do {?>

<option value="<?php echo $row_rsclientes['id_cliente']?>"><?php echo $row_rsclientes['nome']?></option>

<?php } while ($row_rsclientes = mysql_fetch_assoc($rsclientes));

$rows = mysql_num_rows($rsclientes);

if($rows > 0) {

mysql_data_seek($rsclientes, 0);

$row_rsclientes = mysql_fetch_assoc($rsclientes);}

?>

</select>

<input type="text" name="nome" id="nome" maxlength="50" size="50" onKeyUp="filtranome()" />

<br />

<label for="nome">Filme:</label>

<select name="filmes" id="filmes" />

<option value="default">Digite ao lado</option>

<?php do {?>

<option value="<?php echo $row_rsfilmes['id_filme']?>"><?php echo $row_rsfilmes['titulo']?></option>

<?php } while ($row_rsfilmes = mysql_fetch_assoc($rsfilmes));

$rows = mysql_num_rows($rsfilmes);

if($rows > 0) {

mysql_data_seek($rsfilmes, 0);

$row_rsfilmes = mysql_fetch_assoc($rsfilmes);}

?>

</select>

<input type="text" name="titulo" id="titulo" maxlength="13" size="13" onKeyUp="filtratitulo()" />

<img src="../img/add.gif" onClick="AddField()">

<br />

<input type="button" name="cadastrar" id="cadastrar" value="Enviar" onClick="valida()" />

</fieldset>

</form>

</div>

 

O código filtra na combo, mas dá um erro -> document.getElementById(...).options[...].text é nulo ou não é um objeto

 

Gostaria de melhorar ainda isso... Tipo quando clicar na imagem adicionasse uma outra combo com os filmes, caso quisesse locar mais de um filme.

 

Alguém dê uma luz.

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.