Jump to content
gersonab

Autocomplete só mostra após segundo nome

Recommended Posts

Bom dia, utilizo um sistema de auto complete que funciona quase que perfeitamente, porque quase, se eu tenho 10 Marias cadastradas o autocomplete só inicia após eu colocar uma letra do segundo nome e ou sobrenome, tipo :

se eu escrever Maria somente, não aparece opções na lista;

agora se eu escrever Maria A - ja começa a aparecer opções na lista;

tem como iniciar as opções após uma terceira letra digitada ?

segue o código que utilixo.

form

<label class="field">
  <input type="text" name="nomec" id="nomec" class="gui-input">
  <input type="hidden" name="idc" id="idc">
</label>

ajax

$( "#nomec" ).autocomplete({
source: function( request, response ) {

$.ajax({
url: "../lista/autocli.php",
type: 'post',
dataType: "json",
data: {
search: request.term
},
success: function( data ) {
response( data );
}
});
},
select: function (event, ui) {
$('#nomec').val(ui.item.label); 
$('#idc').val(ui.item.value); 
return false;
}
});

autocli.php

require_once('config.php');
if(isset($_POST['search'])){
 $search = $_POST['search'];

 $query = "SELECT DISTINCT nomec AS nomec, idc FROM cli WHERE nomec like'%".$search."%'";
 $result = mysqli_query($con,$query);

 $response = array();
 while($row = mysqli_fetch_array($result) ){
   $response[] = array("value"=>$row['idc'],"label"=>$row['nomec']);
 }

 echo json_encode($response);
}

exit;

desde já agradeço.

 

Share this post


Link to post
Share on other sites

Bom o díficil da sua pergunta e que não da pra saber qual autocomplete você está utilizando, se for do proprio jquery e nao um custom o minLength é 1 por default pra disparar o evento do autocomplete:

 

 segue link da doc: https://api.jqueryui.com/autocomplete/#option-minLength

 

1-você deve checar se o evento está sendo disparado apos digitar "Maria"

2-você deve checar se o response está vindo correto caso na query esteja "Maria"

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By fideles
      Pessoal, tenho uma dúvida, talvez muito boba.
       
      Tenho um formulario com os input em array, e um alert javascript mostrando que foi registrado com suceso.
       
      O problema maior é que se for gravado 30 registro no banco de dados, ele mostra 30 alertas de registro gravado com suceso, por acaso é possivel limitar esse tanto de alerta para somente 1 independente da quantidade que ele grava no banco ?
    • By violin101
      Caros amigos, saudações...
       
      Desculpa em recorrer ao auxílio dos amigos.
       
      Como consigo realizar ORDENAÇÃO de Tabela usando Radio button ?

      por Exemplo:
      ordenar por: [ ]Código  ou  [ ]Descrição.
       
      Grato,
       
      Cesar
    • By Diego-SLP
      Bom dia,
       
      Estou fazendo uma tela de relatorios de registro de ponto e não estou conseguindo totalizar as horas conforme trago do banco de dados, se alguem puder me ajudar.
       
      SELECT p.cod_obra,f.nome,o.obra, TIME_FORMAT(SEC_TO_TIME(SUM(TIME_TO_SEC(p.totalhora))),'%H:%i') AS hora, TIME_FORMAT(SEC_TO_TIME(SUM(TIME_TO_SEC(p.totalhoraextra))),'%H:%i') AS horaextra, f.funcao FROM rh_pontoFuncionario p, rh_funcionario f, rh_obra o WHERE p.data BETWEEN '2020/10/01' AND '2020/11/20' AND p.cod_obra = '20056' AND p.cod_func = f.cod AND p.cod_obra = o.cod GROUP BY p.cod_obra, f.nome Essa query me traz COD_OBRA,NOME,OBRA,HORA,HORAEXTRA,FUNCAO e eu gostaria de TOTALIZAR o campo HORA e HORAEXTRA somando todas as linhas mas não consigo
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.